error C2065の傾向と対策:変数の宣言忘れ or 名前空間の指定忘れかも
C++は静的型付け言語であり、変数の宣言時にその変数の型を決めてやる必要があります。例えば以下のコード
#include <iostream> int main() { a = 7; std::cout << a << std::endl; return 0; }
では変数a
の型が指定されていないため、以下のエラーが出ます。
error C2065: 'a': 定義されていない識別子です。
このエラーを回避するには、a
の型を指定します。
int a = 7;
また、ある名前空間の下にある変数や関数を、名前空間の指定を忘れて使おうとしたときにもC2065エラーが出ます。例えば以下のコード
#include <iostream> int main() { int a = 7; std::cout << a << endl; return 0; }
では、endl
にstd::
をつけ忘れたため、やはり以下のエラーが出ます。
error C2065: 'endl': 定義されていない識別子です。
このエラーを回避するには、正しく名前空間を指定します。
std::cout << a << std::endl;