zoukankan      html  css  js  c++  java
  • 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;
        }
        
    }
    珍惜时间,只错一次
  • 相关阅读:
    mysql 严格模式 Strict Mode
    PHP中NULL和‘'的区别
    nginx 出现413 Request Entity Too Large问题的解决方法
    mysql 转换NULL数据方法
    mysql大小写敏感配置
    mysql导入大批量数据出现MySQL server has gone away的解决方法
    mysql函数concat与group_concat使用说明
    Linux下aMule安装教程
    四、YOLO-V1原理与实现(you only look once)
    tf.cast(ndarray,dtype)
  • 原文地址:https://www.cnblogs.com/TEAM0N/p/14950380.html
Copyright © 2011-2022 走看看