欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

c++primer plus阅读笔记(七)

程序员文章站 2023-12-24 17:17:15
...

继承权限

继承后,基类的私有,保护,公开成员的属性是对派生类的,继承之后的属性在派生类与原有的属性一样,但是超过继承方式的会被统一压在继承方式下。
class time{
private:
    .. 
protected:
    ..
public:
    ..
};

class time2:protected time{


};

Time2以保护的方式继承之后,time的public成员统一变成了protected,而protectedprivate类的成员不改变。

使用using重定义访问权限

c++11中所有的东西默认在无名全局命名空间中。  
class Time{
    protected:
    void fn(){
        ...
    }
};

Class Time2:private Time{
public:
    using Time::fn;
};

//这里使用using将处于无名空间的fn函数的属性从private变成了public

虚基类的构造

1.虚基类的本质已经变成最顶层类的一部分了而不是中间类,静止信息自动从中间类传递给基类(指构造),编译器会调用虚基类的默认构造函数,顶层类可以显示调用虚基类的构造函数。

泛型表达式参数

n为表达式参数,可以在类定义中直接使用n,类型可以是整型,枚举,引用或指针。
template<class T,int n>
class Array{
public:
    void fn();
};

template<class T,int n>
void Array<T,n>::fn(){...}

在类中定义的函数全都为内联函数

上一篇:

下一篇: