【Qt开发】编译时报"undefined reference to"问题的解决方案
1. 出现原因分析
Undefined reference to 错误:这类错误是在连接过程中出现的,可能有两种原因∶
(1)是使用者自己定义的函数或者全局变量所在源代码文件,没有被编译、连接;
(2)干脆还没有定义,这需要使用者根据实际情况修改源程序,给出全局变量或者函数的定义体。
2. 解决方案
最近使用Qt进行开发,出现了多条 Undefined reference to 报错的问题。我使用了extern来扩展变量的使用域,我在mainwindow.h中对变量进行声明,而在另 外的用到该变量的两个文件进行使用,但是忘记加入对变量的定义导致出错。这种出错原因是上述的第(2)种。
因此:
在使用到该变量的.c或者.cpp文件中,以extern int Name;声明该变量。
在需要对该变量赋值的.c或者.cpp文件中,以int Name定义该变量。