UFCS çalışıyor! :D
import std.stdio;
import std.range;
struct FibonacciSerisi
{
int baştaki = 0;
int sonraki = 1;
enum empty = false;
int front() const @property
{
return baştaki;
}
void popFront()
{
int ikiSonraki = baştaki + sonraki;
baştaki = sonraki;
sonraki = ikiSonraki;
}
FibonacciSerisi save() const @property
{
return this;
}
}
void main()
{
writeln(take(cycle(take(FibonacciSerisi(), 5)), 20));
FibonacciSerisi().take(5).cycle().take(20).writeln();
}
Programın son iki satırı aynı çıktıyı üretiyor:
'[0, 1, 1, 2, 3, 0, 1, 1, 2, 3, 0, 1, 1, 2, 3, 0, 1, 1, 2, 3]
[0, 1, 1, 2, 3, 0, 1, 1, 2, 3, 0, 1, 1, 2, 3, 0, 1, 1, 2, 3]
'
Bu arada, henüz .deb pakedi hazır olmadığı için .zip dosyasından yerel bir dizine kurduğum için bağlayıcı hataları aldım. Sanıyorum zaten kurulu olan 2.058'in kütüphane dosyası seçiliyordu. Onun için şimdilik phobos dosyasını açıkça belirtmem gerekti:
'~/dmd2.059/linux/bin64/dmd deneme.d ~/dmd2.059/linux/lib64/libphobos2.a -ofdeneme -property -unittest -w -wi'
Ali
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]