明代冯梦龙在《喻世明言》有言“正是官无三日紧,又道是有钱能使鬼推磨。”Solidity里面的gas是一位阴晴不定的鬼,像是要看他的心情做事。一些函数需要消耗gas,一些又不需要。而Solidity的优质代码的目标之一就是,如何揣摩这gas鬼的心思,做到“少花钱,多办事”。

实验目的

1.编写第一个Solidity案例,了解Solidity函数的基本形式

2.初步了解Solidity的gas消耗

实验要求

1. 编译版本0.8及以上,将代码中的Your name替换成你自己的名字,并使之编译成功。

2. 编译成功后,先回答代码注释中的两个问题,在问题的括号内填是或否。

3. 先记录部署成功后的gas值,然后调用getName函数,查看gas值是否变化。

4. 再调用changeName函数,随便传入一个新名字,查看gas值的变化。

以下为本实验所用到的测试代码,请使用remix编辑器进行该实验

pragma solidity ^0.8.0;
contract helloworld{
string myname = "Your name";     //小bug

//调用getName函数,gas是否会消耗?(1)
    function getName() public view returns (string memory) {
        return myname;
}          
//调用changeName函数,gas是否会消耗?(2)
function changeName(string  memory _newname) public {
        myname = _newname;
}     
}

以下为本实验的配套教学视频