Delphi'de yeniyim ve varsayılan olarak hangi nesne değişkenlerinin ve yığın değişkenlerinin başlatıldığını görmek için bazı testler çalıştırıyorum:
TInstanceVariables = class
fBoolean: boolean; // always starts off as false
fInteger: integer; // always starts off as zero
fObject: TObject; // always starts off as nil
end;
Bu, diğer dillerde alıştığım davranış, ama Delphi'de buna güvenmenin güvenli olup olmadığını merak ediyorum. Örneğin, bir derleyici ayarına bağlı olup olmadığını veya belki farklı makinelerde farklı çalışıp çalışmayacağını merak ediyorum. Nesneler için varsayılan olarak başlatılmış değerlere güvenmek normal mi, yoksa yapıcıdaki tüm örnek değişkenlerini açık bir şekilde mi ayarlıyorsunuz?
Yığın (yordam düzeyi) değişkenlere gelince, testlerim birimleştirilmiş boolelerin doğru olduğunu, birimleştirilmiş tam sayıların 2129993264 olduğunu ve gerçekleştirilmemiş nesnelerin geçersiz işaretçiler olduğunu (yani sıfır olmadığını) gösteriyor. Sanırım norm, onlara erişmeden önce her zaman prosedür düzeyinde değişkenleri ayarlamak mı?