c++primer plus阅读笔记(七)
程序员文章站
2023-12-24 17:17:15
...
继承权限
继承后,基类的私有,保护,公开成员的属性是对派生类的,继承之后的属性在派生类与原有的属性一样,但是超过继承方式的会被统一压在继承方式下。
class time{
private:
..
protected:
..
public:
..
};
class time2:protected time{
};
Time2以保护的方式继承之后,time的public成员统一变成了protected,而protected和private类的成员不改变。
使用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(){...}