int f()
{
int res = 0;
while ( true ) //или for(;;)
{
//много строк c return, continue, без break
res = 0;break или continue//много строк c return, continue, без break
res = 1;break или continue
}
return(res);
}
あるいはこんな感じ。
int f()
{
while ( true ) //или for(;;)
{
//много строк c return, continue, без breakreturn0;
//много строк c return, continue, без breakreturn1;
}
return(значение возвращаемое по умолчанию если не выполнены предыдущее return);
}
コンパイルエラー: ')'.- すべてのコントロールパスが値を返すわけではない
コードのすべての分岐が値を返すわけではないんですね。
あるいはこんな感じ。
コードのすべての分岐が値を返すわけではないんですね。
彼の言う例で言えば、全部です。while(true)を終了する唯一の方法は、break(これは彼が持っていない)かreturnです。
反論するつもりはない。しかし、コンパイラのエラーメッセージ')'- すべての制御パスが値を返すわけではない、とのこと。
同じことをC++でやってみる
C++と何の関係があるのですか?
....
あなたのコードをもっとよく見てみました。演算子returnによる 戻り値を括弧で囲んで書くというミスがあります。return(0)ですが、return 0と書いていますね。
C++と何の関係があるのですか?
あなたのコードをもっとよく見てみました。return演算子による 戻り値は、括弧で囲んで書くべきでした。return(0)ですが、return 0と書いていますね。
C++はこの場合、参照として機能しますが
C++で書いて、全部mqlでコンパイルしているんですか?
なぜ余計なブラケットをつけたのか?
これは、mql言語の構文 です。
C++で書いて、全部mqlでコンパイルしているんですか?
これは、mql言語の構文 です。
括弧を付けずに値を返すことができる。試してみてください。
C++で書いて、全部mqlでコンパイルしているんですか?
これは、mql言語の構文 です。