对MQL5的祝愿 - 页 38

 
SK. писал (а):

我也希望if() 中解脱出来

我还没有在流行的编程语言中看到过这样的东西...


康帕斯

我偶然发现了一些这样的代码。

while ( true )
{
   if ( condition1 )
   {
      Alert("1");
      break;
   }
 
   if ( condition2 )
   {
      Alert("2");
      break;
   }
 
   break;
}
我想这是需要的;)

今年春天他们不穿经典的衣服吗?:-)让我们看看一件只用IF做的衣服。


if (condition) { // ЭТО IF, КОТОРЫЙ НУЖНО BREAK'НУТЬ ОДНИМ ИЗ НЕСКОЛЬКИХ УСЛОВИЙ
 
  // ...тут делаем че-нить полезное...  
 
  if (!break_condition1) {
 
    // ...продолжаем делать полезное...  
 
    if (!break_condition2) {
 
      // ...продолжаем делать полезное...  
  
    }
  }
}
 
ds2:

他们不是已经在这个春天穿上了经典的衣服吗?:-)请看只用IF做的裙子。

他们在回答问题之前不再阅读问题的讨论了吗?;)
"有序 "恰恰是一个来自if的中断,而不是一个无限的树"!break_condition"。

 
ds2:
SK. 写道:(a)。

我也希望if() 中解脱出来

我还没有在流行的编程语言中看到过这样的东西...

О.就是这样,一语中的。

这句话中的积极说法是,如果不是其他语言,那就不好,这意味着它是外国的东西,没有必要。

在我看来,情况根本不是这样。我们更应该在流行中寻找和谐。时尚不过是羊群效应的生动证实。潮流的东西很少真正有用或舒适。垃圾商品从来没有在普通人的心目中占有重要地位。

请不要把它当作个人的事。

突破和继续只是一个小小的技术工具。

如果你仔细观察许多程序,你会发现摆脱复杂结构的需要并不仅仅出现在循环或滚动的情况下,原因很简单,复杂结构并不仅仅是在循环和列表的基础上形成。它们也是在 "如果"的基础上形成的。因此,有控制地过渡到外部闭合小括号将是有用的。

这不是问题的关键。我想说的是,这种 "认为":"我不需要它 "是发展的一个非常强大的障碍。在我看来,如果新的决定至少有一丝实用性,那么不断地寻找和不拒绝考虑这些决定就会更有用。

 
SK. писал (а):
ds2

我还没有在流行的编程语言中看到这样的东西...

...

休息和继续只是一个小小的技术工具。

...

这个想法很好,我想如果break forif break for while 不同,大家都会很高兴 例如breakifbreakwhilebreakforbreakcase)。

 


karakuts 起初我想问为什么要把它们区分开来,但后来我意识到。只添加一个breakif 更容易、更符合逻辑


P.S. 开始使用编辑器了,我把所有的东西都杀了--我很抱歉。

 
karakuts:

这个想法很好,我想如果break forif break for while 不同,大家都会很高兴 例如breakifbreakwhilebreakforbreakcase)。

顺便说一下,这里是这个想法的一个发展。在breakforbreakcase 等方面做出区分,本身就很有用。它将避免执行(和早期的代码)大量的检查来退出一个复杂的嵌套结构。继续也一样。

 

引入单一的goto更是容易,避免了不同的断裂声:即使是批评它的Wirth也在他的Pasquale中留下了它。顺便说一下,GOTO有一个自然的机制来标记过渡标记,这很容易让人记住。

 
Mathemat:

引入单一的goto更是容易,避免了不同的断裂声:即使是批评它的Wirth也在他的Pasquale中留下了它。顺便说一下,Goto有一个自然的机制来标记过渡标记,这很容易让人记住。

我已经有10年没有使用无条件跳转运算符了,以前有一些编程语言(当时是高级编程语言)是离不开它的,但现在它已经成为一种共性了!"。:)

P.S. 我赞成保留它,四个GOTO带来了美好的回忆 :)

 
Mathemat:

而且,为了避免不同的断裂声,引入一个单一的Goto就更容易了:即使是批评它的Wirth也在他的Pasquale中留下了它。顺便说一下,Goto有一个自然的机制来标记过渡标记,这很容易让人记住。

很好。夏天的时候,我们在河边有这么多的青蛙,很是热闹!:)从现在起我就叫他们断路器:)

 

关于 外部人员,还有一件事。

制作"条件性 " 变量将是很方便的,这些变量的可见性和使用可能性取决于其他外部变量。

例如,有一个 "抛物线过滤 "的功能,它由相应的布尔变量启用。它有参数 -抛物线指标的"步长 "和 "最大值"。因此,只有当 "抛物线过滤器=真 "时,这些参数才应该是可见的,并可用于编辑。

例2:2条平均线的交叉点的专家顾问。慢速平均的周期必须受到快速平均周期的限制(反之亦然)。也就是说,如果fastPeriod=20,slowPeriod的值不能低于21。