C++继承中名字查找的示例分析-创新互联
这篇文章将为大家详细讲解有关C++继承中名字查找的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
目前创新互联已为上千余家的企业提供了网站建设、域名、虚拟空间、网站托管、服务器托管、企业网站设计、山阴网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。实例如下:
#include#include using namespace std; class Base { public: void func() { cout << "func() in Base." << endl; } void func(int a) { cout << "func(int a) in Base." << endl; } void func(string s) { cout << "func(string s) in Base." << endl; } }; class Derived : public Base { public: //using Base::func; void print() { cout << "func() in Derived." << endl; } }; int main() { Derived d; d.Base::func();//指定基类版本 d.func(); d.func(12);//error,可在派生类中添加using Base::print; d.func("abc");//error,可在派生类中添加using Base::print; system("pause"); return 0; } //一个对象,引用,指针的静态类型决定了该对象哪些成员可见。 //派生类作用域嵌套在基类作用域中 //派生类成员将屏蔽同名的基类成员 //如果派生类想通过自身类型使用的基类中重载版本,则派生类必须要么覆盖所有重载版本,要么一个也不覆盖。 //利用using声明可把基类中的所有重载版本都添加到派生类作用域中 //名字查找先于类型检查,如果在派生类中找到了调用的函数名,则不会继续向上查找,接着进行类型检查
关于“C++继承中名字查找的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
分享文章:C++继承中名字查找的示例分析-创新互联
文章路径:http://lswzjz.com/article/ddchpe.html