goto是什么,为什么说是种不好的编程方式?

来源:百度知道 编辑:UC知道 时间:2024/06/05 18:31:19
是不是只在C++中是这样的?

goto是条件跳转指令,可以使程序的执行跳转到另一个位置,因此它会破坏其它的控制流机制(如FOR,IF SWITCH)所提供的有用结构。

goto语句常常导致程序需要不断进行修补,而通过goto语句对原来的代码进行修改,程序很快就会变得难以理解。

谁说不行的,谁说我跟谁急
goto 最大的用途就是异常分支中释放数据,不然每次处理异常都释放一遍资源,对于复杂的程序是难以想像的,放在最后释放,每次goto一下就行了,多爽

当然goto的限制是只往下跳,你要是往上跳了,出错了就怪不了它了

[转载]
goto概念来源于机器指令中的跳转指令,在早期高级语言(以FORTRAN为代表)中,引进了goto语句,曾经因为其灵活和高效而被广泛实用。各种诡异用法甚至成了衡量程序员水平的标准之一。但在伟大的荷兰计算机科学家Dijkstra发表震惊计算机界的论文《goto有害论》,并且证明了所有 goto语句都可以被改写成不用goto语句的程序后,结构化程序设计理念兴起,一批结构化语言兴起,以algol为代表,后来的pascal、c等。 goto有害已经得到程序设计界一致的共识,现在基本上是常识了。虽然现在语言都保留了goto语句,但实际开发中,通常都会严格控制使用,比如限制在前后多少条语句范围内,在函数开始和goto以及标号语句处加上详细注释等。

dijkstra在他的“A Case against the GO TO Statement”这篇论文中详细阐述了使用goto的危害以及对不使用goto而使用顺序结构、选择结构、循环结构组成的算法结构可以解决任何问题的证明。

你可以在google上输入A Case against the GO TO Statement filetype:pdf 来获得该论文

参考资料:A Case against the GO TO Statement

一种跳转函数,可以直接指定跳转到程序的某个地方!!用这个语句的话程序就不便别人看了!你自己看也很麻烦了。所以最好不用

用的时候很爽,维护的时候你试试