簡體   English   中英

新構造函數引發異常后的對象指針狀態 - C ++

[英]Object Pointer Status After New Constructor Throws Exception - C++

當新的類構造函數在C ++中引發異常時,對象指針的狀態是什么? 以下面的代碼為例:

CMyClass * pobjMyClass = (CMyClass *)0xA5A5A5A5;

try
{
    pobjMyClass = new CMyClass(); // Exception thrown in constructor
}
catch ( ... ) {}

當這個代碼執行pobjMyClass的值時,拋出異常后會是什么? 指向CMyClass的無效實例, 0xA5A5A5A5NULL ,某些隨機未初始化值或其他內容的指針? 謝謝。

由於在賦值發生之前拋出異常,pobjMyClass將是以前的任何東西 - 在你的情況下,0xa5a5a5a5。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM