天天看點

Effective C++讀書筆記(一)

    知識點一:

    default構造函數:default構造函數是一個可被調用而不帶任何實參的構造函數。這樣的構造函數要不沒有參數,要不就是每個參數都有預設值。

    例:

class A
{
 public:
     A(){};      //default構造函數
}
           
class B
{
public:
    B(int x = 0,bool y = true);  //default構造函數
}
           

    知識點二

    explicit關鍵字:防止進行隐式類型轉換,但仍可以顯示類型轉換。

void doSomething(B b);  //接收一個類型為B的對象
B b1;   //一個類型為b的對象
B b1(28);//正确,根據int 28建立一個對象
doSomething(28);//錯誤,doSomething應該接收一個B,而int和B之間沒有進行隐式類型轉換
doSomething(B(28));//正确,顯示類型轉換
           

繼續閱讀