Back to page

− Links

 Print 

SampleCodes​/Phobos​/range​/2 :: D言語友の会

wiki:SampleCodes/Phobos/range/2


Table of contents
  • 概要
  • ポイント
  • サンプルコード
  • 実行結果
  • 投票とコメント

概要 anchor.png[4] Edit [5]

std.arrayに含まれるAppenderを利用すると、効率のよい配列への要素追加が行えます。*1

Page Top

ポイント anchor.png[6] Edit [7]

割り当ては

auto app = appender(ary);

配列の変数へのポインタをappenderに渡してやることで生成してくれます。

追加は

app.put(e);

追加後のデータの取得方法は

ary = app.data;

aryは配列、eはaryの型か、aryの要素の型です。

Page Top

サンプルコード anchor.png[8] Edit [9]

Everything is expanded.Everything is shortened.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
 
 
 
-
|
|
|
|
|
|
|
|
|
-
!
import std.array;
import std.stdio;
 
void main() {
    string str;
    auto app = appender(str);
    app.put("xxx");
    app.put("XXX");
    app.put('a');
    app.put('b');
    app.put('c');
    str = app.data; // 変化は直接strに表れないため、代入しなおします。
    writeln(str);
    // 特に後始末は考えなくてもよしなにしてくれる
}
Page Top

投票とコメント anchor.png[12] Edit [13]

Choices Vote
大変参考になった0  
参考になった0  
あまり参考にならなかった0  
まったく参考にならなかった0  

No comment. コメント​/SampleCodes​/Phobos​/range​/2Edit[14]

Name:

*1 D2.049

Last-modified: 2010-08-28 (Sat) 00:56:06 (JST) (3801d) by SHOO