Solidity:如果CurrentPrice低于LastTransactionPrice,则禁用买卖



是否可以在Solidity中进行比较CurrentAsk的LastTransactionPrice;CurrentBid?

那么如果价格(要价/出价(低于LastTransactionPrice,则禁用买卖?

谢谢!

您为CurrentAsk、CurrentBid和LastTransactionPrice创建了3个状态变量:

uint256 CurrentAsk private;
uint256 CurrentBid private;
uint256 LastTransactionPrice private;

然后写入setter以突变这两个状态变量:

// askPrice gets set by the seller
function setCurrentAsk(uint256 askPrice) public {
CurrentAsk=askPrice
}
// bidPrice gets set by the buyer
function setCurrentBid(uint256 bidPrice) public {
CurrentBid=bidPrice
}

你可以写一个require语句来添加购买/销售功能,但这样,人们仍然可以调用setCurrentAsksetCurrentBid功能并支付汽油费。为了提高效率,您可以将require语句添加到这两个函数中。

function setCurrentAsk(uint256 askPrice) public {
require(askPrice>LastTransactionPrice,"ask higher amount")
CurrentAsk=askPrice
}

function setCurrentBid(uint256 bidPrice) public {
require(bidPrice > LastTransactionPrice, "ask higher amount")
CurrentBid=bidPrice
}

require语句将检查当前条件,如果不返回true,它将恢复函数执行,solidity将显示您定义的错误:";要求更高的金额";

相关内容

  • 没有找到相关文章

最新更新