D'yi sevme sebebim genelde benim kafa yapima uymasi ve ilk denedigim seyin o konu hakkinda birsey bilmesem bile kafamdaki gibi ilk denemede calismasi.
Dun boyle olmayan bir durumla karsilastim ve biraz okuma yapmak zorunda kaldim.
Konu opEquals https://dlang.org/spec/operatoroverloading.html#equals
Eger soz konusu sinif ise
<bool opEquals(Object a, Object b)
{
}>
Bende bunu denemistim kodumdaki bir yapinin icinde fakat kod derlenmedi. Dokumantastona goz attim yanlis yaptigimi ilk bakista anlamadim.
Bir 10 dakka ugrastikdan sonra dokumani gercekten okumak zorunda kaldim ve soyle bir not gordum :
struct S
{
bool opEquals(const S s) { ... }
}
Boyle bir farkin olmasinin geregi ne acaba ? Bu konuda siniflar ve yapilar degisik mi davraniyor gercekten ? Eger oyleyse bunun gerekcesi ne?
Sizin genel olarak D 'nin operator yuklemeleri konusundaki dusunceleriniz nelerdir?(Ben cok basarili buluyorum)
Erdemdem
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]