我觉得我在做一些非常愚蠢的事情,但我根本无法弄清楚我的代码有什么问题。我什至做了一个超级简化版的代码,仍然出现错误:
#include <iostream>
using namespace std;
class c1{
public:
    c1(){}
    ~c1(){}
    virtual int add(int a, int b);
private:
protected:
};
class c2 : c1{
public:
    c2(){}
    ~c2(){}
    int add(int a, int b){
        return a+b;
    }
};
int main(){
    c2 c;
    c.add(5,6);
}
谁能发现我确信是有史以来最愚蠢的错误?
这是确切的错误消息:
1>main.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall c1::add(int,int)" (?add@c1@@UAEHHH@Z)