我有问题,不知道如何解决它。我相信这是愚蠢的小事:嵌套类,undefined参考,静态方法
我有3个文件:
Util.hpp
class Util
{
public:
class BitParser
{
public:
static bool getBitAt(int buf, int idx);
};
};
Util.cpp
#include "Util.hpp"
bool Util::BitParser::getBitAt(int buf, int idx)
{
return true;
}
application.cpp
#include "Util.hpp"
int main(int argc, char* argv[])
{
Util::BitParser::getBitAt(1,1);
}
职高中,上面列出的文件位于相同的目录中。现在当我尝试链接和编译我收到链接器错误:
$ g++ -o app application.cpp
application.cpp:(.text+0x19): undefined reference to `Util::BitParser::getBitAt(int, int)'
collect2: ld returned 1 exit status
什么是搞砸了?
将util.cpp添加到编译命令中。 –