![](/img/trans.png)
[英]C++: Is it legal to declare a method virtual in a derived class when it wasn't virtual in the base?
[英]Declare 'virtual' constructor for base and derived class in c++?
也許這是一個小問題:我有一個基類B,它的構造函數帶有許多(6+)個參數(並且不穩定,將來可能會更改)。 並且有許多派生類從其繼承,它們也具有相同的構造函數簽名,並且它們都只做基礎類而已。
所以問題是:有沒有一種方法可以只在基數中聲明一次,而無需在派生類中聲明? 就像普通的虛函數一樣。
我正在使用c ++ 11。
您可以繼承所有基類的構造函數:
struct base {
base(int, float, void*, bool, std::nullptr_t, std::size_t) { /* ... */ }
};
struct derived : base {
using base::base;
};
derived d(0,0.0f, nullptr, false, nullptr, 0);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.