静态成员函数I已经在Global.h定义该类C++调用从外部文件
class Global
{
public:
static string InttoStr(int num);
};
在Global.cpp,我有
Global::InttoStr(int num)
{
//Code To convert integer into string.
}
现在,从SubMove.cpp,当我调用Global :: InttoStr(num)我得到以下错误:
错误LNK2019:无法解析的外部符号Global :: InttoStr(int)在函数中引用SubMove :: toString(void)
然后我做了功能非静态,并把它称为像这样:
Global g;
g.InttoStr(num);
但错误依然存在。
我认为它与extern有关并且搜索了它但我无法建立任何连接。请帮忙。
你能粘贴更多相关的代码吗?很难想象你的描述会出现什么问题。例如,它看起来不像“Global :: InttoStr(int num){...”应该被编译。 – PAG 2011-06-05 10:43:26
您在Global.cpp中的定义缺少返回值。这是代码的写法,还是只是一个错字? – eran 2011-06-05 10:44:02
你如何编译? 'gcc SubMove.cpp'?您需要包含两个.cpp文件。 – nothrow 2011-06-05 10:47:22