教材3.3構(gòu)造函數(shù)類型轉(zhuǎn)換中的例題勘誤

字號(hào):

3.3構(gòu)造函數(shù)類型轉(zhuǎn)換中的例題P47~P48
    教材中程序輸出:
    Initializing 0 //建立對(duì)象Try
    Initializing 5 //建立隱藏對(duì)象
    Destroying 5 //析構(gòu)第一次建立的對(duì)象Try
    5 //輸出建立的隱藏對(duì)象之?dāng)?shù)據(jù)
    Initializing 10 //由強(qiáng)制類型轉(zhuǎn)換建立數(shù)據(jù)為10的對(duì)象
    Destroying 10 //析構(gòu)建立的隱藏對(duì)象Try(num=5)
    10 //輸出由強(qiáng)制類型轉(zhuǎn)換建立對(duì)象的數(shù)據(jù)
    Destroying 10 //析構(gòu)由強(qiáng)制類型轉(zhuǎn)換建立對(duì)象Try(num=10)
    但是當(dāng)你在構(gòu)造函數(shù)和析構(gòu)函數(shù)中輸出this指針時(shí),你就會(huì)發(fā)現(xiàn)雖然上面的輸出正確,但注釋卻說明了嚴(yán)重的錯(cuò)誤。析構(gòu)的對(duì)象完全亂了!
    正確的注釋如下:
    Initializing 0 //建立對(duì)象Try
    Initializing 5 //建立隱藏對(duì)象
    Destroying 5 // 析構(gòu)新建的隱藏對(duì)象
    5 // 輸出Try對(duì)象的數(shù)據(jù)
    Initializing 10 //由強(qiáng)制類型轉(zhuǎn)換建立數(shù)據(jù)為10的對(duì)象
    Destroying 10 // 析構(gòu)新建的隱藏對(duì)象Try(num=10)
    10 // 輸出Try對(duì)象的數(shù)據(jù)
    Destroying 10 // 析構(gòu)Try對(duì)象