Solidity语言学习(3)——智能合约源文件基本要素

  • 合约类似面向对象语言中的类。
  • 支持继承

    每个合约中可包含 状态变量(state Variables)函数(function)函数修饰符(Function Modifiers)事件(Events)结构类型(Structs Types)枚举类型(Enum Types)

状态变量 (State Variables)

变量会永久存储在合约的存储空间

pragma solidity ^0.4.0;

// simple store example
contract simpleStorage{
      uint valueStore; //state variable 
}

函数(Functions)

智能合约中的一个可执行单元

pragma solidity ^0.4.0;

contract simpleMath{
     // Simple add function, try a divide action?
     function add(uint x,uint y) returns (uint z){
            z = x + y;
      }
}

函数调用可以设置为内部(internal)的和外部(external)的。同时对于其他合同的不同级别的课件性和访问控制(Visibility and Accessors)。

函数修饰符(Function Modifier)

用于增强语义

事件(Events)

事件是以太坊虚拟机(EVM)日志基础设施提供一个便利接口。用于获取当前发生的事件。

pragma solidity ^0.4.0

contract Company{
      //user define 'Employee' struct type
      //group with serveral variables
      struct employee{
            string name;
            uint age;
            uint salary;
      }

      //User defined 'manager' struct type
      //group with serveral variables
      struct manager{
             employee employ;
             string title;
       }
}

枚举类型

特殊的自定义类型,类型的所有值可枚举的情况。

pragma  solidity ^0.4.0;

contract Home{
     enum Switch{On, Off}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值