亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用后藤有什么問題?

使用后藤有什么問題?

C++
慕尼黑的夜晚無繁華 2019-07-11 10:20:13
使用后藤有什么問題?我正在瀏覽xkcd,看到了這個(如果幾年前還讀過一些關于它們的負面文本的話):它到底有什么問題?那么,為什么Goto在C+中是可能的呢?我為什么要不用它們?
查看完整描述

3 回答

?
躍然一笑

TA貢獻1826條經驗 獲得超6個贊

在1968年,迪克斯特拉(Edsger Dijkstra)給編輯寫了一封著名的信ACM的來文 Goto被認為是有害的在其中,他提出了結構化編程的案例。同時循環如果.那么.條件詞。當使用goto替代這些控制結構時,結果往往是意大利面碼..幾乎每天使用的每一種編程語言都是一種結構化的編程語言,而Gotos的使用幾乎已經被淘汰了。實際上,Java、Scala、Ruby和Python沒有goto指揮。

C、C+和Perl仍然有一個goto命令,在某些情況下(特別是在C中),后藤是有用的例如,退出多個循環的中斷語句,或者將清理代碼集中在函數中的單個位置,即使有多種方式終止該函數(例如,在函數執行過程中的多個點返回錯誤代碼)。但是一般來說,它的使用應該被限制在特定的設計模式上,這些模式需要以一種控制和認可的方式來實現。

(在C+中,最好使用Raii或護衛 (更多)而不是使用Goto進行清理。但后藤是Linux內核中常用的成語 (另一個來源),這是習語C代碼的一個很好的例子。)

XKCD漫畫是一個問題的笑話,“當有特定的設計模式時,它的使用是否總是被認為是有害的?”


查看完整回答
反對 回復 2019-07-11
  • 3 回答
  • 0 關注
  • 373 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號