首页 新闻 会员 周边

C++ 链接错误

0
悬赏园豆:5 [已解决问题] 解决于 2016-11-09 08:57

如下类定义:

class Base
{
public:

    virtual void log() = 0;
    Base()
    {
        //log();
        init();
    }
private:
    void init()
    {
        log();
    }
};

如上代码所示;

问题:为什么调用init不会有unresolved external symbol问题,log()函数不是没有实现吗?

还望解惑,感激不尽。

C++_小渣渣的主页 C++_小渣渣 | 初学一级 | 园豆:194
提问于:2016-11-08 16:53
< >
分享
最佳答案
0

unresolved external symbol是链接时才会可能出现的,你定义的Base类如果没有引用的话,即使没有定义也不会报错

收获园豆:5
2012 | 高人七级 |园豆:21230 | 2016-11-09 08:18
其他回答(1)
0

 你的类,也还没有实例化

悦光阴 | 园豆:2251 (老鸟四级) | 2016-11-08 17:08
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册