Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/155.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c+中未解析的外部符号+; 我在C++文件中定义了一个全局变量。例如:bool\u变量=1_C++ - Fatal编程技术网

c+中未解析的外部符号+; 我在C++文件中定义了一个全局变量。例如:bool\u变量=1

c+中未解析的外部符号+; 我在C++文件中定义了一个全局变量。例如:bool\u变量=1,c++,C++,现在我在其他C++文件中使用这个变量: ExtBuel-BoOL变量 .< 但是我得到了错误错误LNK2001:未解析的外部符号 “bool变量”(?\u变量@@3\u NA) 如何解决此错误???这意味着链接器无法找到此类变量的定义 你确定你在任何地方都是用同样的方式写的吗 < L> > P>你确信当你得到这样的错误时,包含定义的C++文件会被编译并与其他文件链接吗? 您确定定义此变量的命名空间相同吗 这意味着链接器无法找到此类变量的定义 你确定你在任何地方都是用同样的方式写的吗 < L>

现在我在其他C++文件中使用这个变量:<代码> ExtBuel-BoOL变量 .< 但是我得到了错误
错误LNK2001:未解析的外部符号
“bool变量”(?\u变量@@3\u NA)


如何解决此错误???

这意味着链接器无法找到此类变量的定义

  • 你确定你在任何地方都是用同样的方式写的吗

  • < L> > P>你确信当你得到这样的错误时,包含定义的C++文件会被编译并与其他文件链接吗?

  • 您确定定义此变量的命名空间相同吗


    • 这意味着链接器无法找到此类变量的定义

      • 你确定你在任何地方都是用同样的方式写的吗

      • < L> > P>你确信当你得到这样的错误时,包含定义的C++文件会被编译并与其他文件链接吗?

      • 您确定定义此变量的命名空间相同吗


      可能您忘记将带有定义变量的文件包含到项目中(假设您使用的是VS)。

      可能您忘记将带有定义变量的文件包含到项目中(假设您使用的是VS)。

      请提供相关的代码部分。请提供有关您的环境的更多信息(visual studio、带有makefile的gcc…)。不要在全局范围内的标识符中使用“\u”作为第一个字母。编译和链接文件所使用的命令。这一切取决于您如何构建文件。请提供相关的代码部分。请提供有关您的环境的详细信息(visual studio、gcc with makefile…)。不要在全局范围内的标识符中使用“\u”作为第一个字母。编译和链接文件所用的命令取决于构建文件的方式全局声明文件时没有名称空间…在其他文件中,我在顶部使用extern bool_变量,但是在这之后,函数就在我试图使用此变量的名称空间基中……我应该怎么做?@SPB:
      \u variable
      必须始终在同一名称空间中声明,无论是在定义它时还是在将它声明为外部时。如果声明和定义都发生在全局名称空间中,那不是问题所在。全局声明时没有名称空间…在另一个文件中,我在顶部使用extern bool_变量,但是在这之后,函数就在我试图使用此变量的名称空间基中……我应该怎么做?@SPB:
      \u variable
      必须始终在同一名称空间中声明,无论是在定义它时还是在将它声明为外部时。如果声明和定义都发生在全局命名空间中,那么这不是问题所在。