构造函数(constructor)是一种特殊的函数,每个合约可以定义一个,并在部署合约的时候自动运行一次。它可以用来初始化合约的一些参数.
例如合约的owner地址:
address owner; // 定义owner变量
constructor(address initialOwner) {
owner = initialOwner; //将owner设置为initialOwner
}
在不同版本solidity构造函数的语法不同,0.4.22及之后的版本都使用上方语法.
旧版语法示例如下:
pragma solidity =0.4.21;
contract cTest {
function cTest () public {
}
}
构造函数名与合约名相同
修饰器(modifier)是Solidity特有的语法,类似于面向对象编程中的装饰器(decorator),声明函数拥有的特性,并减少代码冗余。有修饰器的函数会带有某些特定的行为,主要使用场景是运行函数前的检查,例如地址,变量,余额等。