0

我正在使用pragma solidity >=0.7.0 <0.9.0;.

符合42以下功能:

function addXtoAccName( address _accNumber, string _xtoName ) public memory {
        accounts[_accNumber].xtoDisplayName = _xtoName;
        accounts[_accNumber].xtoAccNumber = _accNumber;
}

导致此错误消息:

ParserError: Expected '{' but 
got 'memory'
:
:
42 | function addXtoAccName(
address _accNumber, string 
_xtoName ) public membory {
| ^^^^^^

有人可以解释我在第 42 行做错了什么吗?

4

1 回答 1

2

您的代码memory在函数定义的修饰符部分使用关键字,它不属于该关键字。此外,它缺少参数的数据位置string所有引用类型(包括string)都需要定义它们的数据位置。

因此,您似乎只是放错了memory关键字。

请注意,以防万一您打算故意使用名为 的修饰符memory:它是保留关键字,因此无法使用具有此名称的修饰符。


解决方案:memory关键字移到string:

function addXtoAccName( address _accNumber, string memory _xtoName ) public {
于 2021-12-09T14:45:50.447 回答