千家信息网

C++怎么使用继承的构造函数

发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,本篇内容主要讲解"C++怎么使用继承的构造函数",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"C++怎么使用继承的构造函数"吧!C.52:使用继承的构造函数
千家信息网最后更新 2025年01月23日C++怎么使用继承的构造函数

本篇内容主要讲解"C++怎么使用继承的构造函数",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"C++怎么使用继承的构造函数"吧!

C.52:使用继承的构造函数功能将构造函数导入不再需要进一步明确初始化的派生类
Reason(原因)

如果派生类需要那些构造函数,重新实现它们的工作单调乏味而且容易发生错误。

Example(示例)

std::vector有大量的构造函数很难用,因此如果我需要自己的vector,我不会重新实现它们。

class Rec {
// ... data and lots of nice constructors ...
};

class Oper : public Rec {
using Rec::Rec;
// ... no data members ...
// ... lots of nice utility functions ...
};
Example, bad(反面示例)
struct Rec2 : public Rec {
int x;
using Rec::Rec;
};

Rec2 r {"foo", 7};
int val = r.x; // uninitialized

这就是需要进一步初始化的例子。如果派生类没有增加数据成员只是增加一些功能,就可以使用using Rec::Rec这种方法导入基类的构造函数。对于上面的例子也可以考虑使用类内初始化器初始化数据成员x。

保证派生类的所有成员都被初始化。

到此,相信大家对"C++怎么使用继承的构造函数"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0