Alıntı (acehreli:1356481900):
>std.format'ın belgesinden ve birim testlerinden öğrendim. :)
> import std.array;
> import std.stdio;
> import std.format;
>
> void main()
> {
> auto düzen = FormatSpec!char("Adım: %s\nSoyadım: %s");
>
> string[] strl;
> strl ~= "Zekeriya";
> strl ~= "Durmuş";
>
> auto yazıcı = appender!string;
>
> foreach (değer; strl) {
> düzen.writeUpToNextSpec(yazıcı);
> formatValue(yazıcı, değer, düzen);
> }
>
> writeln(yazıcı.data);
> }
> ```
> Ali
>
Hocam bu std.format olanağı bana çok ilginç geldi. Tıpkı kendi gruplama düzen belirteçleri (<http://ddili.org/forum/thread/998>)mizi beliryebilmemiz gibi. Peki aşağıdaki olanağın bir benzerini, çağrışımsal diziler için de yapabilmek mümkün mü?
Ben beceremedim de...:(
import std.stdio;
struct Foo {
enum string[ubyte] data = [ 1: "bir", 2: "iki", 3: "üç" ];
string toString() @property {
auto outText = appender!string;
foreach(keys; data.keys) {
formattedWrite(outText, "%s: %s\n", keys, data[keys]);
}
return outText.data;
}
}
void main() {
Foo bar;
bar.writeln;
}/*
1: bir
2: iki
3: üç
*/
--
[ Bu gönderi, <http://ddili.org/forum>'dan dönüştürülmüştür. ]