Thread overview
March 14, 2014
void foo(int i)
{}

void main()
{
   foo = 42;
}

Yukarıdaki kod derleniyor. Nasıl yani? :) Evet, foo(42) olarak derleniyor.

Bu, nesnelerin nitelik olanağının beklenmedik etkisiymiş. Orada da üye işlevlere değer atayabiliyoruz ve aslında işlevi o değerle çağırmış oluyoruz:

struct S
{
   void üye(int değer)
   {}
}

void main()
{
   auto s = S();
   s.üye = 42;    // s.üye(42)'nin eşdeğeri
}

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

March 17, 2014

Yani eşitlik yaptığımız zaman fonksiyonu çağırmaktan farkı olmuyor?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

March 17, 2014

Evet.

Bu, 'text = foo' yapan birisinin başına gelmiş. text diye bir değişken tanımladığını sanıyor ama aslında tanımlamayı unutmuş. Buna rağmen kod derleniyor çünkü std.conv modülü programa eklenmiş durumda ve onun içinde text() diye bir işlev var. :)

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

April 08, 2014

İşlev olduğunu bildiğimiz müddetçe sorun yok ve sanki güzel bir esneklik, ne dersiniz?

Hatta parantez aç/kapadan daha az zahmetli. Sonuçta 2 karakter yerine tek eşittir karakteri ile netice alıyoruz. Ama kod okumayı zorlaştırabilir ya da birden fazla parametre verilemeyecektir. Yoksa şu kaldırılması düşünülen virgül olanağı (http://ddili.org/forum/thread/1350) burada çalışır mı? En kısa zamanda denemek iyi fikir olabilir :)

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

April 08, 2014

Alıntı (Salih Dinçer):

>

Hatta parantez aç/kapadan daha az zahmetli.

Doğru.

Alıntı:

>

Ama kod okumayı zorlaştırabilir

Bu kod, dlang.org forumlarında birisinin kodunda belirmişti. Programcı tanımladığını düşündüğü bir değişkene (örneğin, buradaki 'foo' gibi) atadığını sanıyordu ama tesadüfen bir Phobos işlevinin ismini seçtiği için kod sessizce Phobos işlevini çağırıyordu.

Alıntı:

>

ya da birden fazla parametre verilemeyecektir.

Evet, o bu durumda şart. İki parametre olsa olmaz.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]