pure constant view 区别
都用constant可以执行成功
如果参数类型是storage(指针引用类型),函数必须是internal或者private类型
demo
string public str ="magina";
function update(string storage param) private{
bytes(param)[0]="M"; //必须转成数组,修改数组中的第0个元素。如果参数类型是memory,则无法修改str的内容
}
function test() public {
update(str)
}
都用constant可以执行成功
返回值带有变量用constant
只是返回一个固定的值,比如XX、2、helloword这种需要用pure
返回值即没有变量也没有固定值就用view,比如msg.sender
默认参数都是memory类型(值引用类型)。如果参数类型是storage(指针引用类型),函数必须是internal或者private类型
demo
string public str ="magina";
function update(string storage param) private{
bytes(param)[0]="M"; //必须转成数组,修改数组中的第0个元素。如果参数类型是memory,则无法修改str的内容
}
function test() public {
update(str)
}