猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
使用后藤有什么问题?
使用后藤有什么问题?
我正在浏览xkcd,看到了这个(如果几年前还读过一些关于它们的负面文本的话):
它到底有什么问题?那么,为什么Goto在C+中是可能的呢?
我为什么要
不
用它们?
慕尼黑的夜晚无繁华
浏览 330
回答 3
3回答
跃然一笑
在1968年,迪克斯特拉(Edsger Dijkstra)给编辑写了一封著名的信ACM的来文 Goto被认为是有害的在其中,他提出了结构化编程的案例。同时循环和如果.那么.条件词。当使用goto替代这些控制结构时,结果往往是意大利面码..几乎每天使用的每一种编程语言都是一种结构化的编程语言,而Gotos的使用几乎已经被淘汰了。实际上,Java、Scala、Ruby和Python没有goto指挥。C、C+和Perl仍然有一个goto命令,在某些情况下(特别是在C中),后藤是有用的例如,退出多个循环的中断语句,或者将清理代码集中在函数中的单个位置,即使有多种方式终止该函数(例如,在函数执行过程中的多个点返回错误代码)。但是一般来说,它的使用应该被限制在特定的设计模式上,这些模式需要以一种控制和认可的方式来实现。(在C+中,最好使用Raii或护卫 (更多)而不是使用Goto进行清理。但后藤是Linux内核中常用的成语 (另一个来源),这是习语C代码的一个很好的例子。)XKCD漫画是一个问题的笑话,“当有特定的设计模式时,它的使用是否总是被认为是有害的?”
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
C++
typedef入门问题
1 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续