Error
為什麼 Remix 告訴我使用“純”?
// SPDX-License-Identifier: MIT pragma solidity ^0.6.0; contract enumTesting{ enum frenchFriesSize {large, medium, small} frenchFriesSize choice; frenchFriesSize constant defaultChoice = frenchFriesSize.medium; function setSmall() public { choice = frenchFriesSize.small; } function getChoice() public view returns(frenchFriesSize){ return choice; } function getDefault() public view returns(uint){ return uint(defaultChoice); } }
Remix 建議我將 getDefault 函式更改為“純”,但不是從函式外部讀取變數“defaultChoice”嗎?
Remix 建議將函式聲明為
pure
因為defaultChoice
它不是變數。編譯器在程式碼中執行內聯常量,因此它們不使用儲存空間。