C++Primer-继承中的类作用域

每个类定义自己的作用域,派生类作用域嵌套在基类内,如果一个名字在派生类作用域内无法解析,将继续在外层的基类作用域中寻找
在内层作用域的名字可以隐藏外层作用域的名字,可以使用作用域运算符来抵消隐藏
名字查找发生在类型检查之前

通过基类调用隐藏的虚函数
程序执行的顺序是名字查找、类型检查、虚函数匹配/直接调用
虚函数要有相同的名字和形参列表,否则就会发生函数名字的隐藏
如果派生类没有进行虚函数覆盖,调用时会执行基类的版本,但是如果由于隐藏导致名字查找阶段出现异常,就不会进行到虚函数匹配的阶段了

覆盖重载的函数
无论是否是虚函数,类的成员函数都可以被重载,派生类也可以选择覆盖哪些重载的函数,可以使用using+作用域运算符进行标记,从而避免繁琐

全部评论

相关推荐

点赞 评论 收藏
分享
04-28 11:34
西北大学 运营
牛客4396号:不好意思,这个照片猛一看像丁真
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务