前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一、基本remix环境及HelloWord contract《2022 solidity8.+ 版本教程到实战》

一、基本remix环境及HelloWord contract《2022 solidity8.+ 版本教程到实战》

作者头像
1_bit
发布2022-09-28 15:23:04
4490
发布2022-09-28 15:23:04
举报
文章被收录于专栏:我的知识小屋

这个系列是 solidity8.+版本的教程,既然学习了 solidity 就应该明白智能合约是啥,在此系列文章中将不赘述基础概念,只讲解对应的语法,希望读者理解。

环境

solidity 版本:8.+(2022年9月8日 最新版本) IDE:https://remix.ethereum.org/(在线IDE)

一、solidity IDE界面介绍

以下图片时 solidity 智能合约开发的在线 IDE remix:

在这里插入图片描述
在这里插入图片描述

点击 greate 可以创建自己的一个工程,并且默认自带了 contracts、scripts以及tests 目录:

在这里插入图片描述
在这里插入图片描述

此时我们可以点击对应的按钮新建文件夹或者新建一个文件:

在这里插入图片描述
在这里插入图片描述

读者可尝试用鼠标悬停与按钮之上查看对应的信息,在此我点击tests目录下,在tests目录下创建一个01_test.sol 文件,sol 后缀表示 solidity 文件:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

创建完毕后可在右侧自动打开的 sol 文件中进行代码编写。

二、代码编写

协议

在代码编写的第一行一般是协议说明,在此咱们使用其他 sol 文件中的协议说明:

代码语言:javascript
复制
// SPDX-License-Identifier: GPL-3.0

在这里使用的协议是 GPL-3.0,关于协议的声明是使用注释表示,想了解更多协议的直接搜索相关知识即可。

版本

接下来编写对应solidity 的版本号:

代码语言:javascript
复制
pragma solidity >=0.7.0 <0.9.0;

pragma solidity 表示声明的版本号信息,在此说明版本信息是大于等于 0.7.+ 版本和小于 0.9.0 版本,又可直接指定版本信息:

代码语言:javascript
复制
pragma solidity 0.8.16;

也可添加 ^ 表示此合约是在该版本之上:

代码语言:javascript
复制
pragma solidity ^0.8.0;
合约

接着是编写合约部分:

代码语言:javascript
复制
contract Hello{
    
}

其中 contract 表示定义一个合约,Hello 为合约名,其花括号包裹的内容为合约内容。接着我们在合约内部创建一个对应的 string 对象:

代码语言:javascript
复制
string public say="Hello 1_bit";

此时 string 表示当前需要创建的变量类型,public 表示当前类型的作用范围,public 表示外部可见,其 say 是变量名称,之后的等于号表示赋值,则 剩下的 Hello 1_bit 表示其内容,用双引号标记。

此时所有代码如下:

代码语言:javascript
复制
// SPDX-License-Identifier: GPL-3.0
pragma solidity ^0.8.0;
contract Hello{
    string public say="Hello 1_bit";
}

三、编译部署

接着我们点击编译:

在这里插入图片描述
在这里插入图片描述

点击编译后,可以看到有版本号选择:

在这里插入图片描述
在这里插入图片描述

选择 sol 代码中所指定的对应版本信息进行编译,接着点击编译后将会出现 绿色√ 表示编译通过:

在这里插入图片描述
在这里插入图片描述

最后点击 Deploy 部署合约:

在这里插入图片描述
在这里插入图片描述

部署成功后将会看见成功部署的提示,并且在 Deployed Contracts 下会出现已成功部署的合约:

在这里插入图片描述
在这里插入图片描述

此时展开合约查看,可见 say 变量:

在这里插入图片描述
在这里插入图片描述

点击 say 变量后可查看对应的 say 存储中的内容:

不过需要注意,在合约中字符串变量存储过多内容会影响 Gas 消耗。

若在 contract 中删除 public :

在这里插入图片描述
在这里插入图片描述

部署合约后 say 将不可见。

在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-09-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 环境
  • 一、solidity IDE界面介绍
  • 二、代码编写
  • 三、编译部署
相关产品与服务
区块链
云链聚未来,协同无边界。腾讯云区块链作为中国领先的区块链服务平台和技术提供商,致力于构建技术、数据、价值、产业互联互通的区块链基础设施,引领区块链底层技术及行业应用创新,助力传统产业转型升级,推动实体经济与数字经济深度融合。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档