pragma solidity >=0.6.0<0.8.0;
contract TestModifier{
uint public a = 0;
modifier myModifier() {
a = 5;
_; // 添加修改器的函数在执行时,函数代码被插入在这个位置执行。
a = 10;
}
// 添加修改器,callModifier函数调用后a=10
function callModifier() public myModifier {
a = 9;
}
}
2、带参数的修改器
pragma solidity >=0.6.0<0.8.0;
contract TestModifierArgument{
// 游戏玩家,等级>5,可以修改昵称,>10,可以修改皮肤颜色
uint public level = 0;
string public name;
string public skinColor;
// 不使用修改器
// function setName() public {
// if (level > 5) {
// name = "Noic";
// }
// }
// function setSkinColor() public {
// if (level > 10) {
// skinColor = "red";