solidity学习(二)

pragma solidity ^0.4.0;
//版本号,预编译,^是向上兼容版本(0.4~0.5)

//建立对象  contract是建立的对象-是合约  HelloWorld是合约的名字
contract HelloWorld{
    //给对象加入状态,面向对象编程嘛,这里是string
    string Myname = "xixi-Teamon";
    
    //写一个方法,获取对象的所有行为
    function getName() public view returns(string)
    //这里的public是权限,所有人都可写入。
    //view不会修改区块链上的变量、代码,但是可以读取变量,节约了gas
    {
        
        return Myname;
        
    }
   
   function changeName(string _newName) public
   //string后面有空格,加的变量要上下一致
   //点击changeName以后,就会消耗gas.上面有view,所以多次点击getname这个函数不消耗gas.
   {
       
       Myname = _newName;
   }
   
   function pureTest(string _name) pure public returns(string){
       
    //pure是固定的输入输出,但是pure后面记得加返回值,返回到_name中
    //pure函数不消耗gas
       return _name;
   }
    
}

这里定义了三个function:getName、changeName、pureTest三个函数,主要作用是看deploy一次以后多次点击,是否还会有油耗。

  • getName后面有view,不修改区块链上的东西。单点不消耗gas

 

太惨了。。。代码能力为0,,还得从hello world学起。。。。丢脸嘤嘤嘤。。。

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

Boolean判断:

pragma solidity ^0.4.0;

contract BooleanTeat{
    
    bool _a;
    //returns后面要加上bool
    int num1 = 100;
    int num2 = 200;
    
    //第一个功能:简单输出bool状态
    function getBool() returns(bool){
        return _a;
        //默认情况下,没有具体值,返回的bool类型都是false;
    }
    
    
    //第二个功能:同第一
    function getBool2() returns(bool){
        
        return !_a;
        //反转:真变假,假变真。
    }
    
    
    //第三个功能:进行对比、判断
    function panduan() returns(bool){
        return num1==num2;
        //只输出真和假,这里num1不等于num2,所以输出的是false。
    }
    function panduan2() returns(bool){
        return num1 != num2;
    }
    
    //与或非
    //&&:两个相等才为真   ||:一个为真则为真
    function yu() returns(bool){
        return (num1==num2) && true;
    }
    function yu2() returns(bool){
        return (num1!=num2) && true;
    }
    function yu3() returns(bool){
        return (num1==num2) || true;
    }
    function yu4() returns(bool){
        return (num1==num2) || false;
    }
    
}
珍惜时间,只错一次
原文地址:https://www.cnblogs.com/TEAM0N/p/14950380.html