solidity基础-常量、变量和函数

一、常量

  solidity 常量支持 值类型 和 字符串类型

contract ConstantTest {

    uint constant x = 11 ** 11;
    string constant text = "abcdefg";

}

 

二、变量

  solidity 的变量和 其他语言一样,分为局部变量,全局变量,状态变量;

2.1、局部变量

  变量仅在函数中有效;

contract VariableTest{

    function getResult() public view returns(uint){
      uint a = 1; 
      return a; 
   }

}

2.2、全局变量 ( Global Variables )

  在全局都有效的变量,保存在全局命名空间;

  该变量返回区块数量

contract VariableTest{

    function getResult() public view returns(uint){
      return block.number; 
   }
}

    还有以下全局变量[1]

       

 

2.3、状态变量

 

  变量值永久保存在合约存储空间中的变量

复制代码
contract VariableTest {

   uint storedData;    

   constructor() public {
      storedData = 10; 
   }

}
复制代码

 

三、函数

   这个函数是官网的例子[2]

复制代码
contract SimpleStorage {
    uint storedData;

    function set(uint x) public {
        storedData = x;
    }

    function get() public view returns (uint) {
        return storedData;
    }
}
复制代码

  定义一个 uint 变量

uint storedData;

  函数 set 赋值 storedData

function set(uint x) public {
       storedData = x;
}

  函数 get 获取 storedData

 function get() public view returns (uint) {
        return storedData;
 }

  部署测试,set 赋值 123, 通过 get 获取到 123

    

 

 

--------------------------------------------------------------------------------------------------------------------------------

引用:

  [1] 全局变量 :https://docs.soliditylang.org/en/latest/units-and-global-variables.html

  [2] 函数:https://docs.soliditylang.org/en/latest/introduction-to-smart-contracts.html

 

posted @   apeNote  阅读(280)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示