Error

為什麼 Remix 告訴我使用“純”?

  • October 10, 2021
// 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它不是變數。編譯器在程式碼中執行內聯常量,因此它們不使用儲存空間。

引用自:https://ethereum.stackexchange.com/questions/111236