函数可以具有全局,名称空间,类(在这种情况下通常称为成员)或本地(在另一个函数内)作用域.他们也可以static给他们内部链接或在匿名命名空间内,使他们在翻译单元外无法访问(同时仍然具有外部链接,因此它们可以用作模板参数).
简而言之,范围是可以声明名称的区域.在范围内声明的名称可在该范围内访问,在某些情况下也可从外部访问.
(为了迂腐准确,这实际上是一个声明区域,名称的范围是程序中名称有效的部分.它从声明的地方开始,包括该区域的其余部分,有时还有一些其他地区.)
范围由名称空间,类和复合语句(即包围的代码语句块{})引入.最后一个包括函数体.
大多数对象和函数都有名称,每个名称都在一个范围内.
所以"函数的范围"可能意味着两件事:函数体的定义范围,其中声明了局部变量; 或声明函数名称的范围(类或命名空间).
更新:你说你的意思是函数名称的范围.这总是在宣言后立即开始; 它结束的地方取决于声明的位置.
| 归档时间: |
|
| 查看次数: |
8706 次 |
| 最近记录: |