【Array】
一個程式語言中最經典的資料結構莫過於array
了,陣列的性質如下:
擁有兩個成員:
.length
,.push(element)
可為固定或動態的長度,取決於我們是否宣告陣列的長度。
T[][5]
是五個動態陣列長度的組合(reverse notation)
pragma solidity ^0.8.11;
contract MyArray {
uint256[] arr_1;
uint256[] arr_2 = [3,2,4];
uint256[5] arr_3;
uint[][] array2D = [ [1,2,3], [4,5,6] ];
function getValueOfIndex(uint256 _index) public view returns (uint256) {
return arr_2[_index];
}
// 在一個陣列的最後加入一個元素
function addToArray(uint256 _value) public {
arr_2.push(_value);
}
// 調用一個陣列的長度
function valueCount() public view returns(uint) {
return arr_3.length;
}
}
動態記憶體配置
uint[] memory arr = new uint[](3);
如果我們訪問了超過記憶體的值,Solidity 不會向其他語言一樣丟 Runtime Error 回來,而是會返回該型態的預設值。
Last updated
Was this helpful?