solidity[2]-helloworld-创新互联

运行你的合约

现在编译完全顺利,请转到“run”选项卡,以便我们可以运行我们的合约!

为南丹等地区用户提供了全套网页设计制作服务,及南丹网站建设行业解决方案。主营业务为网站设计制作、成都网站制作、南丹网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

solidity[2]-helloworld

compile

在这里,您可以指定一些选项来创建合约,例如,选择哪个地址部署它。
现在我们不会混淆这些设置。只要确保环境设置为“JavaScript VM”,然后点击粉红色的“Deploy”按钮即可。

solidity[2]-helloworld

deploy

消息日志不多,但意味着将你的合同部署到了以太坊地址(尽管只在虚拟环境中)!
部署合同也使用Gas,并花费一定的以太币。这就是为什么,如果你检查选项中的账户地址,你的余额应该从100以太币略微下降到接近99。

solidity[2]-helloworld

ether 减少

现在HelloWorld合约已启动并正在运行,只需按下浏览器窗口中的蓝色按钮 “getIt” ,即可调用其getIt函数。

solidity[2]-helloworld

solidity

正如你看到的,日志系统中详细记录了调用的详情:
另外要注意的是,你的账户中的以太币并没有发生变化,因为他只是一个“view”函数。

solidity[2]-helloworld

log

添加一个可写入的函数

到目前为止一切顺利,但我们真正想要做的是让任何人将名称变量改为别的。为此,我们将添加一个新的changeIt函数。

1
2
3
4
5
6
7
8
9
10
pragma solidity ^0.4.0;

contract HelloWorld {

 // ...

 function changeIt(string _newString) public {
   firstTest= _ newString;
 }
}

正如你所看到的,这个函数在几个方面与getIt不同。它并没有使用视图修改,因为它实际上改变了存储在blockchain数据,也不会返回任何东西。
Solidity函数中的参数通常以下划线(_)作为前缀,以将其与全局状态变量(如firstTest)区分开来。我们将在整个课程中采用这一惯例。

再次运行

我们再次单击“deploy”按钮来重新部署我们的合同。

solidity[2]-helloworld

change

注意新的“changeIt”按钮是粉红色而不是蓝色,以强调它是可写入函数的事实。 您现在应该可以在输入字段中键入新名称(不要忘记在名称周围添加双引号),单击“changeIt”按钮并通过单击“getIt”来获取它。 solidity[2]-helloworld

complete

恭喜!你已经完成了第一个solidity的智能合约。获取和设置不同类型的状态变量我们将在后续反复使用。

  • 本文链接: https://dreamerjonson.com/2018/11/07/solidity-2-helloworld/

  • 版权声明: 本博客所有文章除特别声明外,均采用 CC BY 4.0 CN协议 许可协议。转载请注明出处!

solidity[2]-helloworld

创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。


名称栏目:solidity[2]-helloworld-创新互联
本文地址:http://scyanting.com/article/pgcsc.html