2013-02-09 109 views
-2
class A { 
    public: 
    A() { cout << "Constructor\n"; } // (1) default constructor 
}; 

A obj;        // (2) instantiating obj 

A obj();        // (3) 

實例化objobj()有什麼區別? obj調用上面提到的默認構造函數(1)。哪個構造函數會調用obj()C++中object和object()之間的區別是什麼

+0

@謝謝大家的鏈接.. – 2013-02-09 07:53:25

回答

1

A obj();聲明瞭一個名爲obj的函數,它不接受任何參數並返回A。它根本沒有聲明A對象。

由於A obj();未聲明A對象,因此不會導致任何構造函數調用。

+0

哦,那樣。謝謝你;-)。 – 2013-02-09 07:50:03

0

第二個被聲明爲函數。該函數的名稱是obj。它不需要任何參數。它返回類型A的對象。

+0

謝謝你Apurv。我知道了.. – 2013-02-09 07:51:14

相關問題