概述
类访问修饰符
public :公有成员,类内外部均可访问。
2.private:私有成员,类内部和友元函数可以访问,类外部不可访问。
3.protected:保护成员,与私有类似,类外不可访问,但子类可访问。
ps:对于类内未声明的成员默认为private。
修饰符 | 类内部 | 类外部(main函数或者全局函数及变量) | 子类中 |
---|---|---|---|
public | 可见 | 可见 | 可见 |
protected | 可见 | 不可见 | 可见 |
private | 可见 | 不可见 | 不可见 |
类的继承方式
1.public继承:基类的public、protected、private成员在
2.protected继承:基类public、protected成员在子类中为protected成员(可见),private成员在子类中不可见。
3.private继承:基类public、protected成员在子类中为private成员()。
ps:对于未声明的类的继承方式默认为private。
继承方式 | 基类public成员在子类中 | 基类protected成员在子类中 | 基类private成员在子类中 |
---|---|---|---|
public | 加入子类public成员 | 加入子类protected成员 | 不可见,继承后需要用友元函数访问 |
protected | 加入子类protected成员 | 加入子类protected成员 | 不可见,继承后需要用友元函数访问 |
private | 加入子类private成员 | 加入子类private成员 | 不可见,继承后需要用友元函数访问 |
构造函数与析构函数
构造函数用于给类的成员赋值。在为某一个类创建对象时构造函数自动执行。
1.无参构造函数:
class Line
{
public:
void setLength( double len );
double getLength( void );
Line(); // 这是构造函数
private:
double length;
};
Line::Line(void)
{
cout << "Object is being created" << endl;//没有进行任何赋值,只是说明对象已经创建
}
2.有参构造函数:
class Line
{
public:
void setLength( double len );
double getLength( void );
Line(double len); // 这是构造函数
private:
double length;
};
Line::Line( double len)
{
length = len;//对私有成员length进行赋值
cout << "Object is being created, length = " << len << endl;
}
3.析构函数
class Line
{
public:
void setLength( double len );
double getLength( void );
Line(); // 这是构造函数声明
~Line(); // 这是析构函数声明
private:
double length;
};
Line::Line(void)
{
cout << "Object is being created" << endl;//对象已创建
}
Line::~Line(void)
{
cout << "Object is being deleted" << endl;//对象已删除
}
4.初始化列表初始化
Line::Line( double len): length(len) //等同于length=len;
{
cout << "Object is being created, length = " << len << endl;
}
最后
以上就是优美枕头为你收集整理的c++中类的学习笔记(一)类访问修饰符类的继承方式构造函数与析构函数的全部内容,希望文章能够帮你解决c++中类的学习笔记(一)类访问修饰符类的继承方式构造函数与析构函数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复