如何编写C++继承构造函数

Sir*_*lot 5 c++

我已经离开了C++一段时间了,我对这个问题有点麻烦.我会饶恕你的坏代码 - 有人可以发一个'模型答案'来为如何用一个接受一些值的构造函数编写一个简单的头文件和源文件,并将一些值传递给它的基础类构造函数?我担心我错误地在线制作内容.谢谢.

有时,最简单的答案是最难在互联网上找到明确的例子.

Mah*_*ive 8

// ExampleClass.h
#ifndef ExampleClass_H_
#define ExampleClass_H_

#include "ExampleBase.h"

class ExampleClass : public ExampleBase {
public:
    ExampleClass(int a);
};

#endif


// ExampleClass.cpp
#include "ExampleClass.h"

ExampleClass::ExampleClass(int a) : ExampleBase(a)
{
    // other constructor stuff here
}
Run Code Online (Sandbox Code Playgroud)


Osc*_*orz 6

初始化列表来初始化基类.在实例成员之前初始化基类.非虚拟基类从左到右初始化,因此如果您有多个基础,则按照它们的声明顺序初始化它们.

这是将参数传递给基类构造函数的示例:

#include <iostream>

struct Base {
    Base(int i) {
        std::cout << i << std::endl;
    }
};

struct Derived : public Base {
    Derived(int i) : Base(i) {}
};
Run Code Online (Sandbox Code Playgroud)