《c++primer》第五版笔记:类的作用域

记录一些编译的顺序(maybe是这样描述的)

原书p254
名字查找与类的作用域
1.到目前为止,我们编写的程序中,名字查找(寻找与所用名字最匹配的声明的过程)的过程比较直接了当:

1.首先,在名字所在的块中寻找其声明语句,只考虑在名字的使用之前出现的声明。
2.如果没找到,继续查找外层作用域。
3.如果最终没有找到匹配的声明,则程序报错。

2.对于定义在 类内部的成员函数来说,解析其中名字的方式与上述的查找规则有所区别,不过在当前的这个例子中体现得不太明显。类的定义分两步处理:

1.首先,编译成员的说明。
2.直到类全部可见后才编译函数体。

成员定义中的普通块作用域的名字查找
成员函数中使用的名字按照如下方式解析:

1.首先,在成员函数内查找该名字的声明。和前面一样,只有在函数使用之前的声明才被考虑。
2.如果在成员函数内没有找到,则在类内继续查找,这时类的所有成员都可以被考虑。
3.如果类内也没找到该名字的声明,在成员函数定义之前的作用域内继续查找。

《c++primer》第五版笔记:类的作用域最先出现在Python成神之路

版权声明:
作者:ht
链接:https://www.techfm.club/p/16576.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>