天天看點

text

構造函數參數作為成員初始值,盡量避免使用同一對象的成員

X(int val):j(val),i(val);構造函數的參數作為成員函數參數預設實參和構造函數預設

Sales_data構造函數行為與隻接受一個string實參的構造函數

Sales_data(std::istream &is)//構造函數參數顯示其接受一個标準的輸入流資料,構造函數函數體{read(is,*this)}//标準輸入流,類對象的對象位址

構造函數的這種表示形式的含義

Sales_data(std::string s,unsigned cnt,double rev):bookNo(s),units_sold(cnt),revenue(rev * cnt){}

表示構造函數接收std::string,unsigned cnt,double rev3個參數,:後面的表示 構造函數初始化直接使用構造函數的參數;

Sales_data(std::string s = ""):bookNo(s){};同樣是類對象成員資料初始化直接使用構造函數的參數;

delegating constructor委托構造函數使用它所屬類的其他構造函數執行它自己的初始化或者說它自己的一些或是 全部職責委托給了其他構造函數構造函數成員初始值的清單及函數體類名後面緊跟圓括号括起來的參數清單,

不使用任何初始值定義非靜态變量或數組,當對象被預設初始化或值被初始化時自動執行預設構造

試圖以如下形式聲明一個用預設構造函數初始化的對象,

繼續閱讀