无法解决外部符号错误

Unresolving external symbol error

本文关键字:符号 错误 外部 解决      更新时间:2023-10-16

C++编程新手我正在尝试运行一些开源软件,以便在此基础上进行构建。我有3*cpp模块。其中一个包含。。。

const double Qcf[6]= { 1.0, 448.831, 0.64632,0.02832, 28.317,  2.4466};

另外两个模块利用了这个常数,并在其主体中引用了它

extern double Qcf[];  

每个模块都有一个方法/函数即类似的东西

void routine1()
{
double i;
i = 2 * Qcf[1];
} 

我已经构建了代码,看起来它已经编译(即*cpp转到obj),但我收到了2条错误消息。LNK2001未解析的外部符号"双Qcf"

每个错误都与的每个*obj文件有关

(我还得到了另一个LNK1120两个未解决的外部错误,但我认为如果我解决了LNK2001问题,这将自我纠正)。

如有任何关于如何纠正的建议,我们将不胜感激。

Qcf在一个模块中定义为const double[],在另一个模块中将其声明为double[]。你也应该声明它为const。

(或者std::array<double, 6>而不是C样式数组,如果编译器支持C++11)

相关文章: