我试图在VS2017解决方案中创建一个全局变量,以在(2)个CPP文件之间共享一个整数。我以为这没什么大不了的,但是对于我一生来说,我无法撼动这个令人毛骨悚然的LNK1120错误。这应该很容易,请告诉我在哪里搞砸。
我尝试了一个非常简单的程序,该程序对我不起作用(获取LNK1120)。在VS2017中是否需要设置一些特定的东西?我试图使cpp文件相互依赖,但没有骰子...
global.cpp:
int g_x;
int g_y(2);
main.cpp:
#include <iostream>
extern int g_x;
int main()
{
extern int g_y;
g_x = 5;
std::cout << g_y; // should print 2
return 0;
}
上面的示例来自此网站(https://www.learncpp.com/cpp-tutorial/42-global-variables/)
代码可以编译,但是链接器不断在下面抛出错误;
Error LNK2001 unresolved external symbol "int g_x" (?g_x@@3HA)
Error LNK2001 unresolved external symbol "int g_y" (?g_y@@3HA)
Error LNK1120 2 unresolved externals
这使我相信链接器配置设置中是否需要设置某些内容?我在这里想念什么?