今天创建了一个工厂模式,中间定义了两个继承函数,但是在主函数中我没有写内容,直接在继承函数中写的算法,结果报错error LNK2001: 无法解析的外部符号 "public: virtual void __thiscall ,各种搜索引擎也没有解决错误,最后觉得应该是父函数中函数未定义造成的错误,加上函数定义之后解决问题。

这个是很低级的错误,估计只有像我这种直接c++写代码的才会出现的错误,记录一下当做提醒,防止以后再犯相同的错误。

code:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
library.h
class rElement{
public:
virtual void getValue(sqlite3_stmt* stmt);
private:
virtual void setMapValue();

protected:
map<string , int > sql_map_str;
};

class beamElement:public rElement{
public:
void getValue(sqlite3_stmt* stmt ) override;
private:
void setMapValue() override;
};

library.h

void rElement::getValue(sqlite3_stmt *stmt) {

}

void rElement::setMapValue() {

}