Solidity筆記 _ 基本語法


基本語法

版本

pragma solidity >=0.7.0 <0.9.0;

  • Version是 Pragma
  • 表示版本為7.0 - 9.0之間的compiler可以進行編譯

function

function functionName() public view returns(return types){
        return message;

沒有回傳則不需要 returns(return types)部分

  • Visibility
     (1) public : 自己和外部contract都可以呼叫
     (2) external : 只有外部contract可以呼叫
     (3) internal : 只有contract內部可以呼叫
     (4) private : 整個流程都只有contract內部可以呼叫(外c呼叫內c再呼叫 --> X
     (5) view / constant : function沒有修改合約內容,只有讀資料
    
  • Pure function : 沒有和鏈上的資料作讀取的互動,純粹只要執行方法內容

e.g.

pragma solidity ^0.4.17;

contract Inbox{
    //變數
    string public message;

    //建構子
    functoin Inbox(string initialMessage) public {
        message = initialMessage;
    }

    //方法
    function setMessage(string newMessage) public {
        message = newMessage;
    }

    function getMessage() public view returns(string){
        return message;
    }
}

我們其實可以將contract的宣告視為對一個class的宣告








你可能感興趣的文章

關於 React 小書:前端應用狀態管理—狀態提升

關於 React 小書:前端應用狀態管理—狀態提升

Day 54 & 55 - Function Decorators

Day 54 & 55 - Function Decorators

[閱讀組] 如何提交微開發者寫作松單篇作品?

[閱讀組] 如何提交微開發者寫作松單篇作品?






留言討論