(44)类的作用域

来源:互联网 发布:淘宝品牌男装授权 编辑:程序博客网 时间:2024/06/05 04:34
每个类都会定义自己的作用域。在类的作用域之外,普通的数据和函数成员只能由对象、引用或者指针使用成员访问运算符来访问。

一旦遇到了类名,定义的剩余部分就在类的作用域之内了,这里的剩余部分包括参数列表和函数体。结果就是,我们可以直接使用类
的其他成员而无需再次授权了。

另一方面,函数的返回类型通常出现在函数名之前。因此当成员函数定义在类的外部时,返回类型中使用的名字都位于类的作用域之
外。这时,返回类型必须指明它是哪个类的成员。

名字查找

名字查找(寻找与所用名字最匹配的声明的过程)的过程:
一.在名字所在的块中寻找其声明语句,只考虑在名字的使用之前出现的声明
二.如果没有找到,继续查找外层作用域
三.如果最终没有找到匹配的声明,则程序报错

内层作用域可以重新定义外层作用域中的名字,即使该名字已经在内层作用域值使用过。然而在类中,如果成员使用了外层作用域
中的某个名字,而该名字代表一种类型,则类不能在之后重新定义该名字。
0 0
原创粉丝点击