您好,登錄后才能下訂單哦!
本篇內容主要講解“C++怎么使用繼承的構造函數”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“C++怎么使用繼承的構造函數”吧!
如果派生類需要那些構造函數,重新實現它們的工作單調乏味而且容易發生錯誤。
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 ...
};
struct Rec2 : public Rec {
int x;
using Rec::Rec;
};
Rec2 r {"foo", 7};
int val = r.x; // uninitialized
這就是需要進一步初始化的例子。如果派生類沒有增加數據成員只是增加一些功能,就可以使用using Rec::Rec這種方法導入基類的構造函數。對于上面的例子也可以考慮使用類內初始化器初始化數據成員x。
保證派生類的所有成員都被初始化。
到此,相信大家對“C++怎么使用繼承的構造函數”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。