zoukankan      html  css  js  c++  java
  • ethereum(以太坊)(一)

      从这周开始,开始学习以太坊开发--solidity,开始决定往区块链方向发展,毕竟区块链技术应用广泛。一开始接触solidity开发语言不太习惯,毕竟一直在学习python语法,有很多都不能接受。有难度,我喜欢!!

    成功者往往会选择走人少走的,更艰难的路,只有做别人都很难实现的事,再加上个人加倍付出的努力,成功才更有意义!!!
    pragma solidity ^0.4.0;
    
    contract Test{
        string str1;
        uint8 _age;
        uint8 _height;
        uint8 _sex;
        address _owner;
        
        //函数名与与合约名一样则表示构造函数,内部赋值变量需要先声明状态变量   
      //Variables inside the construct cannot be called directly outside
    function Test(){ //==constructor _age = 10; _height = 140; _sex = 1; _owner = msg.sender;
         //uint public _mouth;ParserError }
    function setvalue(uint8 age){ _age = age; } function getvalue() constant returns(uint8){ return _age; } function setStrvalue(string pam){ str1 = pam; } //向字符串内传参,使用双引号("");若使用单引号('),SyntaxError: Unexpected token ' in JSON at position 1 function getStrvalue() constant returns(string){ return str1; } //未执行kill(),返回当前合约地址;执行kill(),error: Failed to decode output: TypeError: Cannot read property 'length' of undefined function getOwner() constant returns(address){ return _owner; } // 析构函数:当msg.sender为owner,删除合约地址 function kill() public{ if (_owner == msg.sender){ selfdestruct(_owner); } } }
    强制的数据位置(Forced data location)
        状态变量(State variables)强制为: storage
    默认数据位置(Default data location)
        函数参数及返回参数:memory
        复杂类型的局部变量:storage
    
    深入分析
    storage 存储结构是在合约创建的时候就确定好了的,它取决于合约所声明状态变量。但是内容可以被(交易)调用改变。
        Solidity 称这个为状态改变,这也是合约级变量称为状态变量的原因。也可以更好的理解为什么状态变量都是storage存储。
    
    memory 只能用于函数内部,memory 声明用来告知EVM在运行时创建一块(固定大小)内存区域给变量使用。
        storage 在区块链中是用key/value的形式存储,而memory则表现为字节数组
  • 相关阅读:
    TDirectory.GetParent获取指定目录的父目录
    TDirectory.GetLogicalDrives获取本地逻辑驱动器
    获取设置目录创建、访问、修改时间
    TDirectory.GetLastAccessTime获取指定目录最后访问时间
    TDirectory.GetDirectoryRoot获取指定目录的根目录
    「洛谷P1262」间谍网络 解题报告
    「洛谷P1198」 [JSOI2008]最大数 解题报告
    「洛谷P3931」 SAC E#1
    「UVA1328」「POJ1961」 Period 解题报告
    「博客美化」I 页面的CSS
  • 原文地址:https://www.cnblogs.com/eilinge/p/9950580.html
Copyright © 2011-2022 走看看