課程
/后端開發(fā)
/Go
/Go語言第一課
在實例中的代碼 defer對于攔截panic函數(shù)的位置是怎么確定的?當(dāng)我把defer放在即將出錯的行數(shù)前面,則能出現(xiàn)實例中正確的輸出,但是后面就會在控制臺報錯
2017-12-21
源自:Go語言第一課 8-3
正在回答
//前面fmt.Println("Enter main")
outerFunc()//后面
fmt.Println("Quit main")
panic在 outerFunc()方法里,你寫在后面的位置,panic導(dǎo)致程序崩潰,系統(tǒng)去找defer的時候,還沒有執(zhí)行到,自然也就找不到.應(yīng)該是defer 這個語句,只有程序執(zhí)行到這一行才有效吧.
糊你大熊臉 提問者
舉報
Go語言入門教程,編程之必備知識擴散,打好Go語言編程基礎(chǔ)
1 回答fallthrough語句僅能作為case語句中的最后一條語句出現(xiàn)。并且,包含它的case語句不能是其所屬switch語句的最后一條case語句。沒有理解這句話是什么意思
1 回答判斷成功的語句弄錯了吧?不拿這節(jié)分了。
5 回答什么叫做衛(wèi)述語句
1 回答interface{}(myDog).(Pet)這個語句什么意思?
1 回答為什么defer調(diào)用recover要在panic之前,放到后面就報錯
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2018-01-05
//前面
fmt.Println("Enter main")
outerFunc()
//后面
fmt.Println("Quit main")
panic在 outerFunc()方法里,你寫在后面的位置,panic導(dǎo)致程序崩潰,系統(tǒng)去找defer的時候,還沒有執(zhí)行到,自然也就找不到.
應(yīng)該是defer 這個語句,只有程序執(zhí)行到這一行才有效吧.