色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

ptr智能指針會(huì)自動(dòng)析構(gòu)的疑問

李中冰2年前21瀏覽0評論

ptr智能指針會(huì)自動(dòng)析構(gòu)的疑問?

看不到測試代碼。

原則上,發(fā)生異常或函數(shù)的返回路徑上,析構(gòu)函數(shù)的調(diào)用是由編譯器插代碼來保證的。不過一般不要在構(gòu)造和析構(gòu)函數(shù)里拋出異常。

C++的異常是庫和邏輯級別的,必須代碼throw;錯(cuò)誤的內(nèi)存訪問、除零錯(cuò)誤等不是C++異常(在曾經(jīng)的vs ide上,ms擴(kuò)展了編譯器行為允許try/catch處理結(jié)構(gòu)化異常,注意看IDE設(shè)置選項(xiàng))。這是不同于Java和C#的,他們是虛擬機(jī)平臺級別的,除代碼拋出外,發(fā)生異常時(shí)虛擬機(jī)也會(huì)拋出。

另外,在C++里異常是可選的,很多庫都提供了關(guān)閉或開啟的開關(guān)。而Java和C#是強(qiáng)制性的,屬于核心機(jī)制。

java拋出異常,ptr智能指針會(huì)自動(dòng)析構(gòu)的疑問