有如下程序 #include #include using namespace std; cla
有如下程序 #include <iostream> #include <iomanip> using namespace std; class MyClass { public: MyClass() { cout<<'A'; } MyClass(char c){ cout<<c; } ~MyClass(){ cout<<'B'; } }; int main( ) { MyClass p1,*p2; p2=new MyClass('X'); delete p2; return 0; } 執(zhí)行這個程序屏幕上將顯示輸出
A.ABX
B.ABXB
C.AXB
D.AXBB
正確答案:D解析:本題主要考查的是構造函數(shù)和析構函數(shù)。構造函數(shù)在對象被創(chuàng)建的時候由系統(tǒng)自動調用,而析構函數(shù)在對象的生存期即將結束的時候由系統(tǒng)自動調用。本例的main()函數(shù)中,第1條語句定義了一個MyClass對象和一個MyClass類型指針,此時創(chuàng)建了1個對象,因為沒有構造參數(shù),故會調用默認構造函數(shù),輸出一個'A'。第2條語句通過new運算符動態(tài)創(chuàng)建了1個MyClass對象,此時傳入了一個構造參數(shù)'X',所以會調用相應的構造函數(shù),輸出一個'X'。第3條語句使用delete運算符釋放了1個對象,所以會調
詞條內容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學等領域),建議您咨詢相關領域專業(yè)人士。