您的位置:首页 > 游戏 > 游戏 > solidity变量作用域

solidity变量作用域

2024/9/24 23:25:15 来源:https://blog.csdn.net/suannai11/article/details/140800656  浏览:    关键词:solidity变量作用域

Solidity 中的作用域规则遵循了 C99(与其他很多语言一样): 变量将会从它们被声明之后可见,直到一对 { } 块的结束。

这一规则有个例外,在 for 循环语句中初始化的变量,其可见性仅维持到 for 循环的结束。

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;// 定义合约C
contract C {// a 变量会在 {} 内生效,  其他地方不生效function test() public pure {uint256 a = 1;a += 1;}//  for 循环是个例外function test2() public pure returns (uint256) {uint256 x = 0;// 可以声明在{}外面for (uint256 a = 0; a <= 100; a++) {x += a;}// 虽然是个例外 , 但是还是在for里面, 外面是无法访问的// a = a + 1;return x;}
}

对于参数的变量(函数参数、修改器参数、捕获(catch)参数......) 在后面的代码块中是可见的--

对于函数和修改器参数,在函数/修改器的主体中,

对于捕获参数,在捕获块中。

// SPDX-Lic

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com