私は関数 "void foo()"を持っていて、関数fooの中では "void bar()"を呼び出します "関数foo() 'はこの範囲で宣言されていませんでした。C++関数スコープ
私はいくつかの研究を行っており、役に立たないものは見つけられないようです。 誰もが問題を知っていますか?私はそれはおそらく単純だが、答えを見つけることができないと確信しています。
私は関数 "void foo()"を持っていて、関数fooの中では "void bar()"を呼び出します "関数foo() 'はこの範囲で宣言されていませんでした。C++関数スコープ
私はいくつかの研究を行っており、役に立たないものは見つけられないようです。 誰もが問題を知っていますか?私はそれはおそらく単純だが、答えを見つけることができないと確信しています。
関数を使用する前に宣言していません。
は何か試してみてください:
またvoid bar(); //declaration
void foo()
{
bar();
}
をbar()
が異なるヘッダで宣言されている場合、あなたは代わりにそのヘッダーを含めることができます。あるいは、をfoo()
の前に定義することもできます(もちろんbar()はfoo()を使用します)。
私は、それは全体の機能です、ホールド、私はコードを投稿します。 –
問題なく、バーがfooの後に宣言され、問題が解決しました。はい、私は恥ずかしいと感じます! –
その同じファイルにした場合:その別のファイルにした場合
void bar()
{
}
void foo()
{
bar();
}
:
#include<bar.h> //header in which bar() is declared
void foo()
{
bar();
}
あなたはあなたのコードを投稿することができますか? – hmjd
コードを表示してください。 –
これはトラップです!コードを表示しないでください! – Anycorn