编译通过,链接时有以下错误:
对‘vtable for xxxx’未定义的引用 对‘typeinfo for xxxx’未定义的引用
这两个错误都是跟virtual相关。后者是父类的情形。
而且这种错误,一旦出现就是相关联的。所以先找最初的那个,解决后再编译。
吾分析了半天,发现是父类的虚函数必须这样写:
virtual void read() = 0; virtual void write() = 0;
嗯? 不这样写就不行?为什么?吾记得=0是表示子类必须实现。吾不实现不行吗?
对于子类必须再次声明父类的虚函数,吾一直觉得有点……