Solidity教程

Solidity Pure(纯)函数

Pure(纯)函数不读取或修改状态。如果函数中存在以下语句,则被视为读取状态,编译器将抛出警告。
读取状态变量。 访问 address(this).balance<address>.balance 访问任何区块、交易、msg等特殊变量(msg.sig 与 msg.data 允许读取)。 调用任何不是纯函数的函数。 使用包含特定操作码的内联程序集。
如果发生错误,纯函数可以使用 revert()require()函数来还原潜在的状态更改。
声明纯函数,可以在函数声明里,添加 pure关键字。
示例
pragma solidity ^0.5.0;
contract Test {
   function getResult() public pure returns(uint product, uint sum){
      uint a = 1; 
      uint b = 2;
      product = a * b;
      sum = a + b; 
   }
}
可以参考Solidity – 第一个程序中的步骤,运行上述程序。
输出
0: uint256: product 2 1: uint256: sum 3
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4