首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我能让我的智能合同中的所有功能都保持不变吗?

我能让我的智能合同中的所有功能都保持不变吗?
EN

Ethereum用户
提问于 2017-12-23 08:46:43
回答 2查看 247关注 0票数 0

如果我订立了一个修改状态的智能合同,但它的所有功能都是不变的(它仍然会编译),这意味着我可以免费使用我的智能合同,而无需支付天然气费用。这难道不是矿工的损失吗?以太如何处理这种情况?

EN

回答 2

Ethereum用户

发布于 2017-12-23 08:49:02

可以,停那儿吧。调用常数函数并不会创建事务。您的客户只在本地计算结果。

但是,常量函数不能改变状态(因为它们是常数)

票数 1
EN

Ethereum用户

发布于 2020-06-24 11:09:57

好吧,如果你能写这样的代码并部署它.是的,它将起作用,但是,这种只能从任何源返回静态数据的合同的用例将非常有限。

据我所知,假设您创建了这样一个契约,它不能返回任何内容(与某事相关的动态数据),因为它在契约中没有任何内容(例如,映射或数组或结构)。

以下是一个例子:

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

contract sample {
 address user;
 
 constructor () public{
     user = msg.sender;
 }
 
 function returnUser() public view returns(address){
     return user;
 }
 
 
}

好好想想..。这类代码的用例范围?

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

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

复制
相关文章

相似问题

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