我试图做的是基本工作,向存储数组中添加一个结构。但出于某种原因,我得到了以下错误
TypeError: Indexed expression has to be a type, mapping or array (is function (struct KYC.Fraud storage ref) returns (uint256))
contract KYC {
struct Fraud {
address bank;
bytes32 accountNumber;
bytes32 routingNumber;
uint256 amount;
uint256 timestamp;
}
Fraud[] frauds;
function reportFraud (address bank, bytes32 accountNumber, bytes32 routingNumber, uint256 amount) external returns(uint256 fraudID) {
Fraud memory fraud = Fraud(bank, accountNumber, routingNumber, amount, now);
frauds.push[fraud];
return frauds.length - 1;
}发布于 2019-02-18 14:25:27
push是一个函数。在使用括号时,就好像它是一个数组,在其中查找结构的索引,这就是导致错误的原因。只需将push[fraud]更改为push(fraud)即可。
https://ethereum.stackexchange.com/questions/67212
复制相似问题