1.事件
是合约和区块链通讯的一种机制。前端可以监听事件。
使用关键字event(参数);来申请
2.require指令:
使用require指令,使得函数在执行过程中,在不满足某些条件的时候抛出错误并停止。
#solidity不支持直接是对字符串比较,只能通过比较两个字符串的keccak256哈希值来判断
与require想似的有assert关键字,但是require失败后会返回gas而assert不会。
3.继承:
contract animal{
}
contarct dog is animal{
}//dog合约继承了animal合约dog可以访问animal的公共函数
4.导入import:
把一个文件导入到另一个文件的时候可以使用Import语句(代码过多分批处理)
import "./sadasd.sol"; //这里的./是同意目录的意思
5.存储变量:
在Solidity中,可以使用storage和memory来储存变量
storage是指永久存储在区块链中的变量
memory是临时变量,在外部函数调用完之后,内存型变量就会被一定
大多数时候Solidity会自动处理在函数外声明的变量(状态变量)默认为“存储”,而函数内部声明的变量是“内存型”。
也可以手动声明存储类型(主要用来处理函数内的结构体和数组):