Sağlamlık - İnşaatçılar

Yapıcı, kullanılarak bildirilen özel bir işlevdir constructoranahtar kelime. İsteğe bağlı bir işlevdir ve bir sözleşmenin durum değişkenlerini başlatmak için kullanılır. Bir kurucunun temel özellikleri aşağıdadır.

  • Bir sözleşmede yalnızca bir kurucu olabilir.

  • Bir sözleşme oluşturulduğunda bir kurucu kodu çalıştırılır ve sözleşme durumunu başlatmak için kullanılır.

  • Bir yapıcı kodu çalıştırıldıktan sonra, son kod blok zincirine dağıtılır. Bu kod, genel işlevleri ve genel işlevler aracılığıyla erişilebilen kodu içerir. Oluşturucu kodu veya yalnızca kurucu tarafından kullanılan herhangi bir dahili yöntem nihai koda dahil edilmez.

  • Bir kurucu genel veya dahili olabilir.

  • Dahili bir kurucu, sözleşmeyi soyut olarak işaretler.

  • Hiçbir kurucu tanımlanmamışsa, sözleşmede varsayılan bir kurucu bulunur.

pragma solidity ^0.5.0;

contract Test {
   constructor() public {}
}
  • Temel sözleşmenin bağımsız değişkenlere sahip kurucuya sahip olması durumunda, türetilen her sözleşmenin bunları geçmesi gerekir.

  • Temel oluşturucu, aşağıdaki şekilde doğrudan başlatılabilir -

pragma solidity ^0.5.0;

contract Base {
   uint data;
   constructor(uint _data) public {
      data = _data;   
   }
}
contract Derived is Base (5) {
   constructor() public {}
}
  • Temel oluşturucu, aşağıdaki şekilde dolaylı olarak başlatılabilir -

pragma solidity ^0.5.0;

contract Base {
   uint data;
   constructor(uint _data) public {
      data = _data;   
   }
}
contract Derived is Base {
   constructor(uint _info) Base(_info * _info) public {}
}
  • Temel sözleşme kurucusunu başlatmanın doğrudan ve dolaylı yollarına izin verilmez.

  • Türetilen sözleşme, bağımsız değişkenleri temel sözleşme kurucusuna iletmiyorsa, türetilen sözleşme soyut hale gelecektir.