私は信じられないほどばかげたことをしているように感じますが、自分のコードの何が問題なのかわかりません。コードの非常に単純化されたバージョンを作成しても、エラーは引き続き発生します。
#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)