首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用smart契约

使用smart契约
EN

Ethereum用户
提问于 2018-08-09 17:35:11
回答 1查看 35关注 0票数 0

假设以下合同已部署到Ethereum。如果我想运行它,我必须支付任何费用吗?

代码语言:javascript
复制
    contract NameRegistry {
mapping(bytes32 => address) public registryTable;
function claimName(bytes32 name) {
if (msg.value < 10) {
throw;
}
if (registryTable[name] == 0) {
registryTable[name] = msg.sender;
}    }    }
EN

回答 1

Ethereum用户

回答已采纳

发布于 2018-08-09 17:43:20

每一个改变契约状态的函数(写/更改可变数据)都消耗气体(ETH)。由于函数中的registryTable[name] = msg.sender;将数据分配给映射,因此它将消耗气体。仅当您从外部源或其他view契约调用view函数时,即合同中的数据未被更改时,气体才不会被消耗。

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/56208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档