![]() |
1
3
在呼叫点
换句话说,这是一种周期性依赖。幸运的是,通过移动
|
![]() |
2
1
如果要按值传入对象,可能需要一个复制构造函数。基本上是一个构造函数,它引用一个对象,告诉编译器在对象通过值传递的情况下应该做什么。 |
![]() |
3
1
您不必将派生类用于基类,而只需使用该函数中的基类。 我建议读一些C++书籍,看看 here |
![]() |
4
1
因为您的基类(EMP)有一个派生类的构造函数,所以我认为您的设计有缺陷。基类永远不需要知道派生类中的内容,这对于您在此处发布的代码是正确的,因此不需要传递派生类来构造基类。 您真正需要做的是为您的基类创建一个真正的复制构造函数(我建议使用初始值设定项),并在派生的复制构造函数中将派生类实例传递给它,即:
(注意,此代码没有类所具有的对员工的额外分配-只是一个示例,用于查看派生类和基类的正确复制构造函数) |
![]() |
KiraHoneybee · 具有构造函数参数的模板化类 2 年前 |
![]() |
nick2225 · 隐式调用复制构造函数? 2 年前 |
![]() |
nohaga · 为什么在本例中p3需要默认构造函数? 2 年前 |
![]() |
Aadil Hoda · 为什么类类型的成员需要初始化? 2 年前 |
![]() |
EloiGG · 具有任意类型的变量的可数的C++函数 2 年前 |