int f()
{
while ( true )
{
//много строк c return, continue, без breakreturn0;
//много строк c return, continue, без breakreturn1;
//много строк c return, continue, без break
}
return Random(); //(*) написано по требованию MQL компилятора //строка 61
}
Хочешь сказать при закрытых графиках не скрывается символ?
你是说当图表关闭 时,符号不会被隐藏?
是的,我以前遇到过几次这样的事情。
但错误信息仍然是正确的。
起初我没有太在意,但再次遇到它时--有观点认为它不正确。这就是原因:进一步是条件性代码
在 while(true) {} 后面要放什么,归根结底是这样的。"反正我们也不会去那里......返回只在形式上需要--为了让编译器说OK......。所以--让我们在那里放一个随机值--返回Random();"。
一段时间后,我们在代码中做了一些修改,现在我们需要在while中添加一个break。
在这种情况下,编译器会说:"OK。while(true) {}之后有代码,这意味着前面已经提供了'break'情况,这组行中一定有相同的'break'。所有的返回值在那时就已经想好了--不用麻烦了!"。
最后我们会得到 一个随机 值。
但如果开头没有字符串(*),编译器会说:"错误:没有......"。...不可能...以前没有中断,我们需要归还一些故意的东西"。
事实证明,(*)字符串不仅过多,而且还增加了难以发现的错误的概率
最初我没有太在意,但再次遇到它时--有一种说法是不对的......。
更重要的是,在你的这个例子中,你通常应该产生一个 "不可到达的代码 "的警告。Studio也没有发出这样的警告,但Borland编译器有,我记得。
良好的记忆力。
而且Borland不会因为一些小事而发出警告,这再一次证明了我的论点
而且博兰不会无缘无故地发出警告......
我不同意你的说法。:)在我看来,这是一个不值得关注的小问题。你只要插上return(0)就可以继续工作了。
此外,在MCL中,你最好总是使用while(!IsStopped()),而不是while(true),在这种情况下,循环后的返回已经是强制性的。
在我的编辑器中,可用的方法列表在点之后并没有下拉。这对我来说是非常不方便的。我怎样才能解决这个问题呢?在旧版本中,它确实下降了。
这个怎么样
这个怎么样