我在DLL内部声明基类CA和派生类CB,两个类仅仅用于DLL内部,不输出。
CA和CB都声明析构函数为虚函数,为啥析构时出错啊?
我把virtual去掉,就没问题。假定DLL的输出类,为CD,由于CD的头文件里需要CB作为变量,我在CD里定义了一个CB的指针,并
在该头件的开始处对CA和CB做前向声明。大致如下:
class CA
{
public:
    virtual ~CA();
}class CB : public CA
{
public:
    virtual ~CB();
}下面是DLL输出类的头文件:
class CA;  //对CA和CB做前向声明
class CB;class __declspec(dllexport) CD
{
private:
    CB*  m_pCB;
}其余代码略,当m_pCB对象析构时,报错。
我也是VC熟手了,怎么今天遇见这么简单的问题啊,郁闷之至啊!