This question already has answers here:
Undefined reference to vtable
(19 个回答)
1年前关闭。
我有一个
我不断得到
[链接器错误] 未定义对 afporoills 的 vtable 的引用
但我不知道什么是 vtable !!!我没有用过,为什么会有错误呢?
请帮助我,因为如果我不摆脱该错误,我将无法继续编写该类(class)。
我还需要做什么才能使
(19 个回答)
1年前关闭。
我有一个
afporoills
类,它有助于在我们的内存管理模块中查找数据。 (不要问为什么这么奇怪的名字我不知道)class afporoills{
void** test(int pos);
};
void** afporoills::test(int pos){
int x=(pos<<3)|1023*x;
void** ret=(void**)x;
if((int)ret%16) return this.test(pos+1);
void* (*fp)(float, uint16__t)=x;
ret=ret+(*fp)(1.0f, (uint16__t)pos);
return ret;
}
int test(){
afporoills afporoills14;
return ((char*) (uint32_t) ((uint32_t) (void*) afporoills14.test(((((uint32_t)))((char*) (void*))1));
}
我不断得到
[链接器错误] 未定义对 afporoills 的 vtable 的引用
但我不知道什么是 vtable !!!我没有用过,为什么会有错误呢?
请帮助我,因为如果我不摆脱该错误,我将无法继续编写该类(class)。
我还需要做什么才能使
test
方法图灵完备? 最佳答案
您可能会收到此错误,因为您在基类中声明了一个虚方法并且未定义它,即基类中提供的虚函数没有函数体。
尝试给它一些虚拟的主体,然后编译它可能会起作用。我最近在一个类似的情况下遇到了这个错误,该情况通过提供定义得以解决。
关于c++ - 对 vtable 的 undefined reference ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5511973/
10-12 06:09