c++中using-创新互联

#include 
using  namespace std;
class A{
    public:
        void foo(void){
            cout << "A::foo(void)" << endl;
        }
};

class B:public A{
    public:
        void foo(int i){
            cout << "B::foo(int)" << endl;
        }
        void bar(void){
            foo();//这里不写using A::foo;就会报错,因为B类中有个foo(int i)
            //函数,会覆盖A类中的同名函数,但是B类中的foo是有参的,调用foo()肯定报错
            //使用using A::foo;
        }
        using A::foo;
};

int main(void){
    B b;
    b.bar();//调用A类中的foo函数
    return 0;
}

此时我们修改B类,其他不变

成都网站制作、成都做网站的关注点不是能为您做些什么网站,而是怎么做网站,有没有做好网站,给成都创新互联公司一个展示的机会来证明自己,这并不会花费您太多时间,或许会给您带来新的灵感和惊喜。面向用户友好,注重用户体验,一切以用户为中心。
class B:public A{
    public:
        void foo(void){
            cout << "B::foo(int)" << endl;
        }
        void bar(void){
            foo();//A::foo();
        }
        using A::foo;//使用using A::foo将基类中的类在此类中可见,但是
                      //此时B中的foo和A中的foo一模一样,所以会此时会调用B中的
                      //foo,如果要想调用A中的foo;直接A::foo()就好了.
      
};

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享名称:c++中using-创新互联
文章网址:http://azwzsj.com/article/djchig.html