3 10 以太坊 solidity資料結構詳解

2021-09-01 02:49:33 字數 565 閱讀 6835

1. solidity資料結構:陣列、列舉、對映/字典、結構體

a. 列舉型別(enums)

i. 列舉型別是在solidity中的一種使用者自定義型別。他可以顯示的轉換與整數進行轉換,但不能進行隱式轉換。顯示的轉換會在執行時檢查數值範圍,如果不匹配,將會引起異常。列舉型別應至少有一名成員。

ii. 與其它程式語言一樣、列舉型別預設從0開始

b. 位元組陣列(fixed byte arrays)

i. 定長位元組陣列:byte1,……,byte32,允許值以步長1遞增,預設byte為byte1

1. 運算子:

a. 比較:<=,<,==,!=,>=和》

b. 位運算子:&,|,(^異或),(~非)

2. 支援下標訪問,取值[0,n),n表示長度

3. .length:表示這個位元組陣列的長度---唯讀(長度不可變)

4. 內部位元組不可變

ii. 動態位元組陣列:

1. bytes:動態長度的位元組陣列,參見陣列(arrays)。非值型別

2. string:動態長度的utf-8編碼的字元型別,參見陣列(arrays)。

以太坊 Solidity學習

函式set和get可以用來變更或取出變數的值。該合約能完成的事情並不多 由於以太坊構建的基礎架構的原因 它能允許任何人在合約中儲存乙個單獨的數字,並且這個數字可以被世界上任何人訪問,且沒有可行的辦法阻止你發布這個數字。當然,任何人都可以再次呼叫 set 傳入不同的值,覆蓋你的數字,但是這個數字仍會被...

以太坊solidity例項學習

判斷是否是管理員,然後儲存被投資者資訊 投資者能對被投資者任意投資 判斷是否是管理員,然後儲存被投資者資訊 投資者能對被投資者任意投資 pragma solidity 0.4.5 contract pcl struct beitouzizhe address beitouzizhe all beit...

以太坊solidity開發環境部署

基於ubuntu 16.04 sudo apt get install y nodejs sudo apt get install npm npm更換 源 sudo npm config set registry 更新nodejs到最新 sudo npm install g n sudo n sta...