我開始學習C++中的異常主題。 我遇到了「堆棧展開」這個術語,這意味着,據我的理解, 每當引發異常,並且「throwing function」中沒有catch塊時,函數堆棧將「展開」,並且由此所有本地對象d'tor將被調用(並且在外部函數中也會發生相同的操作,直到遇到合適的catch塊)。堆棧展開異常C++
我的問題:
假設異常與合適的下一個捕捉try塊內拋出, 將D'TOR將呼籲try塊中定義的所有對象? 或在try塊中定義的所有對象,直到發生異常?或根本沒有任何對象,他們將「等待」該功能退出?