是否可以在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语句来添加购买/销售功能,但这样,人们仍然可以调用setCurrentAsk
和setCurrentBid
功能并支付汽油费。为了提高效率,您可以将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将显示您定义的错误:";要求更高的金额";