0

设置length数组的属性有什么作用。在大多数其他语言length中,是一个返回 arra 长度的函数,但在此代码中,该length属性被设置。

struct ledger_t {
  uint8 WinningNum1;
  uint8 WinningNum2;
  uint8 WinningNum3;
  uint8 WinningNum4;
  bytes32 ClosingHash;
  bytes32 OpeningHash;
  mapping(address=>bet_t) bets;
  uint Guess4OutOf4;
  uint Guess3OutOf4;
  uint Guess2OutOf4;
  uint Guess1OutOf4;
  uint PriceOfTicket;
  uint ExpirationTime; //for eventual refunds only, ~2 weeks after draw announced
}
ledger_t[] public ledger;

//constructor
function TheEthereumLottery() {
  owner = msg.sender;
  ledger.length = 0;
  IndexOfCurrentDraw = 0;
  referral_fee = 90;
}
4

1 回答 1

0

Solidity 数组的length属性可用于获取和设置该数组的长度。要获取长度,只需从属性中读取:

l = ar.length

并为数组设置新长度,只需分配新的长度值:

ar.length = 5

这与大多数实现特定函数来获取和设置数组长度的语言不同。

于 2017-03-21T06:42:32.047 回答