我试图使一个函数更有效,但得到以下错误:
TypeError: Type uint256[4] memory is not implicitly convertible to expected type uint256[] memory.这是我的职责:
function requestUnstake(uint _stakeIndexNo) public returns(bool, uint) {
AllUserStakedTimestamp storage allUserStakedTimestamp = allUserStakes[msg.sender];
uint[] memory prm = [
allUserStakedTimestamp._epochDuration[_stakeIndexNo], // interval
allUserStakedTimestamp._timeOfStake[_stakeIndexNo], // time at stake
allUserStakedTimestamp._timesOfRelease[_stakeIndexNo],// time release
allUserStakedTimestamp._rewardPerCycle[_stakeIndexNo] // reward per cycle
];有解决办法吗?
发布于 2022-08-30 01:58:25
错误告诉您“我不能隐式地为您创建这个数组”。
提示是您需要显式声明它,如下所示(将长度4放在初始化中):
的基本示例
uint[4] memory balance = [uint(1), 2, 3, 4];所以你需要这个:
uint[4] memory prm = [
allUserStakedTimestamp._epochDuration[_stakeIndexNo], // interval
allUserStakedTimestamp._timeOfStake[_stakeIndexNo], // time at stake
allUserStakedTimestamp._timesOfRelease[_stakeIndexNo],// time release
allUserStakedTimestamp._rewardPerCycle[_stakeIndexNo] // reward per cycle
];https://ethereum.stackexchange.com/questions/134599
复制相似问题