c++ - 继承非默认

标签 c++ inheritance

是否有一种语法可以让我在没有 dflt ctor 的情况下继承类?例如:

template<class T>
struct X : private Y(T)//HERE I'm trying to inherit via cnv (conversion) ctor
{
};

最佳答案

当然。您只需在派生类的构造函数的初始化列表中显式调用基类构造函数

struct X {
    X(int a) {}
};

struct Y : X {
    Y() : X(123) {}
};

关于c++ - 继承非默认,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4293423/

相关文章:

c++ - 在没有物理连接的情况下写入时,boost async tcp 客户端不会返回错误

c++ - 类的构造函数必须显式初始化基类

c++ - 具有继承性的多线程 (C++)

php - 如何扩展 laravel Illuminate\Translation\Translator 类

c++ - C++中多继承中使用的reinterpret_cast

c# - 抽象类,如何避免代码重复?

c++ - 内存释放 C++

c++ - std::is_base_of() 深度

c++ - gets() 被认为是 C 函数还是 C++ 函数?

c++ - 在 OpenCV 中计算码本