了解构造函数,运算符重载,析构函数等方面的一些帮助

时间:2015-12-11 08:53:24

标签: c++ class object constructor

所以我是一名C ++初学者,我有一个问题。

我们说我们有一个班级。

从我迄今为止学到的东西看,析构函数看起来像

~Grades();

复制构造函数:

Grades(const Grades & );

<<运营商:

ostream & operator << (ostream & os, const Grades & g);

这些是正确的吗?

常规构造函数如何?转换构造函数怎么样?

1 个答案:

答案 0 :(得分:0)

由编译器提供的常规默认构造函数如下所示,如果它是从任何类派生的,它将在内部调用base class构造函数。稍后对于具有用户定义类型的数据成员,它将按其声明的顺序调用其各自的默认构造函数。

Grades();

转换构造函数是您必须定义的东西,它们看起来像

Grade(const T&)

如果您想要转换功能,

 Grade operator=(const T&)

您可以拥有的唯一destructor假设通过调用相应的destructors(如果是用户定义的数据成员,然后调用基类)来完全取消初始化对象,完全按相反顺序调用默认编译器提供的构造函数提供。