为什么valenok2003反对MT5 - 页 23

 
Roman.:
原则上,是的。汇编程序有jmp。那么,它是为了什么而设计的,不是吗?


汇编程序没有大括号和ifs,所以如果没有jmp 和

ja x 以上 > 无符号数 jae x 以上或相等 >= 无符号数 jb x 以下 < 无符号数 jbe x 以下或相等 <= 无符号数 jc x携带 c==1 (shr,shl,sar,sal,ror,rol... )) jcxz x CX为零 cx==0 je x Equal == jz x Zero ==0 js x Sign <0 jg x Greater > 有符号的数 jge x Greater or Equal >= 有符号的数 jl x Less < 有符号的数 jle x Less or Equal <= 有符号的数

不可避免

 

通常,直到你开始编写自己的编译器,你才会明白为什么goto是不可取的。

Goto破坏了执行流程,超出了范围,在有很多隐式构造函数/解构函数的OOP中尤其有害。当任何一个编译器开发者突然意识到他必须从块的中间跳到未知的地方时,他将会感到惊恐。

尽管C++为了兼容而允许goto,但其编译器对goto的使用施加了许多限制,只给同样简单的情况下的最简单的跳转留下了狭窄的空间。

 
从Algol-60开始,我就没有见过goto,这不能称为程序化。而在汇编中,它是跳转到内存单元号,但不是跳转到标签。在算法过程性语言中不需要Goto,特别是那些支持OOP的语言。
 

Renat:

通常,直到你开始编写自己的编译器,你才会明白为什么goto是不可取的。

Goto破坏了执行流程,超出了范围,在有大量隐式构造函数/解构函数的OOP中尤其有害。当任何一个编译器开发者突然意识到他必须从区块的中间跳到未知的地方时,他都会感到恐惧。

尽管C++为了兼容而允许goto,但其编译器对goto的使用施加了许多限制,只给同样简单的情况下的最简单的跳转留下了狭窄的空间。

没有使用带有触发式析构器的极端块外逃逸。但对于提前退出嵌套循环,以及从不同的条件跳到同一点或不同的点,Goto对于代码的简化是不可缺少的。而且它不仅简化了代码执行,而且在视觉上也简化了。

 
Zhunko:

我还没有用过极端退出与破坏者触发。但对于提前退出嵌套循环,以及从不同的条件过渡到同一点或不同的点,Goto对于代码的简化是不可缺少的。而且它不仅简化了代码的执行,在视觉上也是如此。

特别是当它被554,000个傻瓜使用的时候。
 

来吧,让我们在这里玩宗教战争。好吧,如果没有得到,那就见鬼去吧。

我不记得有什么情况是如此需要它的,以至于我的耳朵里沸腾着硫磺。我甚至不记得有什么时候我有过这样的想法:"呃,我希望我来这里......"。没有这样的事情。也就是说,我不能说我的算法是如此基本。

以同样的方式,你可以留下goto,但由于一些神秘的原因而禁止。而你本来可以活下来。

 
Mathemat:

来吧,我们在这里玩宗教战争。如果没有得到,随便。

我不能说我的算法有那么基本。

那么,你为什么不给我看看呢?)
 
tara: 好吧,我给你看 :)
你为什么不给我看一个算法,有goto比没有goto更优雅。
 
Mathemat:

来吧,让我们在这里玩宗教战争。好吧,如果没有得到,那就见鬼去吧。

我不记得有什么情况是如此需要它的,以至于我的耳朵里沸腾着硫磺。我甚至不记得有什么时候我有过这样的想法:"呃,我希望我来这里......"。没有这样的事情。也就是说,我不能说我的算法是如此基本。

就像我们本可以离开Goto,但由于一些神秘的原因而被禁止一样。而你本来可以活下来。


不,这不公平。我从来没有用过,但这是无害的。
 
tara: 不,这不公平。我从来不用,但它是无害的。
那么,你是用在什么地方?这基本上与为。