它倆有點像,但其實是兩回事精堕。
區(qū)別如下:
1、函數(shù)返回值是把執(zhí)行流轉(zhuǎn)向主調(diào)函數(shù)蒲障,而異常是把程序執(zhí)行流轉(zhuǎn)向函數(shù)調(diào)用序列上碰到的第一個包含try-catch塊的函數(shù)歹篓。必須要注意,try-catch塊是第一個對應(yīng)于拋出的異常的try-catch塊揉阎,如果catch不能捕獲拋出的異常庄撮,則程序執(zhí)行流就會繼續(xù)找。
2毙籽、編譯器在拋出異常的時候總是創(chuàng)建一個臨時性異常類對象COPY洞斯,這是因為函數(shù)執(zhí)行完以后,在它內(nèi)部的throw obj;語句中的obj會隨之消亡坑赡。但是烙如,為了捕獲異常,obj的消亡就顯得不合理了毅否,所以C++實際上是復制了一個obj給異常機制使用亚铁。所以即便catch中的參數(shù)是個引用也無法避免COPY的發(fā)生。另外螟加,這也給使用異常類構(gòu)造函數(shù)直接構(gòu)造默認對象帶來了方便徘溢,如下圖所示:
Throw-catch機制與函數(shù)參數(shù)與返回值的區(qū)別
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門缸沃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人修械,你說我怎么就攤上這事趾牧。” “怎么了肯污?”我有些...
- 文/不壞的土叔 我叫張陵翘单,是天一觀的道長。 經(jīng)常有香客問我蹦渣,道長哄芜,這世上最難降的妖魔是什么? 我笑而不...
- 正文 為了忘掉前任柬唯,我火速辦了婚禮认臊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘锄奢。我一直安慰自己失晴,他們只是感情好,可當我...
- 文/花漫 我一把揭開白布拘央。 她就那樣靜靜地躺著涂屁,像睡著了一般。 火紅的嫁衣襯著肌膚如雪灰伟。 梳的紋絲不亂的頭發(fā)上拆又,一...
- 文/蒼蘭香墨 我猛地睜開眼了讨,長吁一口氣:“原來是場噩夢啊……” “哼捻激!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起前计,我...
- 正文 年R本政府宣布,位于F島的核電站窥翩,受9級特大地震影響业岁,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜寇蚊,卻給世界環(huán)境...
- 文/蒙蒙 一笔时、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧仗岸,春花似錦允耿、人聲如沸。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至姚垃,卻和暖如春念链,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背积糯。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 在此處先列下本篇文章的主要內(nèi)容 簡介 next方法的參數(shù) for...of循環(huán) Generator.prototy...
- 一:java概述:1降瞳,JDK:Java Development Kit嘱支,java的開發(fā)和運行環(huán)境,java的開發(fā)工...
- Common plugin parameterThese parameters are system reserv...
- 水尋歡,小學及初中時扔枫,長得眉清目秀汛聚,聲音也非常好聽,是有名的校草短荐,許多同學都喜歡圍繞在其周圍贞岭。但高中以后,他長得不...