Üç Kuralı

C++ dilinde üç kuralına göre, eğer bir sınıf

  • kopyalama constructor’ı
  • atama operatörü
  • destructor

dan biri, kullanıcı tarafından tanımlanmışsa, çoğu zaman diğer ikisi de kullanıcı tarafından tanımlanması gerekir. Çünkü genelde üçü de hafıza yönetimini kullanır ve eğer hafıza yönetimi kullanılmışsa, kopyalamanın ve yok etmenin (destruct) de yönetilmesi gerekir.

Eğer derleyicinin bizim için implicit olarak oluşturdukları dışında, sıfır kuralının dışına çıkıp, bu üçünden birini oluşturduğumuzda diğer ikisini de tanımlamamız gerekir. Çünkü implicit olarak üretilen default contructor ve destructor artık düzgün olarak çalışmayacaktır.


RAII

80 Words

2018-05-21 03:00 +0300