Solidity
引用數組中元素的正確方法是什麼?
我正在瀏覽Ethereum Pet Shop Truffle 教程,並在測試部分找到了這個:
address adopter = adoption.adopters(8);
上一節使用了
adopters[petId] = msg.sender;
為什麼一個使用
[]
而另一個()
?
教程說,
address[16] public adopters;
是一個公共狀態變數。因此,根據Solidity 文件,編譯器會自動為所有公共狀態變數創建 getter 函式。
您在這裡看到
address adopter = adoption.adopters(8);
的是:訪問自動生成的公共adopters
狀態變數 getter 的教程。這是我創建的一個簡單範例,為您解釋:
將其放入Solidity 線上編譯器中以查看輸出是否符合預期。