zoukankan      html  css  js  c++  java
  • C++基础(using)

    using :

    1.在当前文件中引入命名空间

        using namespace std;

    2.在子类中使用 using 声明引入基类成员名称(参见C++ primer

        具体作用体现:

        (1).解除因继承导致的成员保护或私有化限制,将基类成员引入到派生类的相应访问控制区域内,便可按照相应规则访问该基成员;

        class Base {
        private:
            std::size_t size()
    const { return n; }
        protected:
            std::size_t n;
        };
        class Derive : private Base {

        public:
            
    using
    Base: size;            //用户和类内访问
        protected:
            
    using
    Base:n;                //类内访问
        };

        (1).派生类欲重载基类成员(正常情况下,基类函数会被重写,如果派生类需要重载需要为每个派生类重写基类函数);

        class Base {
        public:
            std::size_t size()
    const { return 1; }

            std::size_t size(int n) const { return n; }
        };
        class Derive : public Base {

        public:

            using Base:size;                    //获得基类所有此函数的重载版本
            std::size_t size(float n)
    const { return n; }            
        };

  • 相关阅读:
    hdu 1166 敌军布阵
    UVA 100
    dfs和bfs 变形课
    hdu 1002 A + B Problem II
    连连看 杭电1175
    跳格子 DFS 加 奇偶截枝
    c语言 判断两直线段是否相交
    poj 3067 Japan
    数状数组
    UVA 10881 Piotr's Ants
  • 原文地址:https://www.cnblogs.com/fegnze/p/4123827.html
Copyright © 2011-2022 走看看