我在做一个控件:
由Tbutton派生
在控件的*impl.cpp文件的public 中定义了一些变量,
然后在这个工程文件中我加了一个窗体,当点击该窗体上的“确定”按钮后
我想获得这些变量的值。
我是这样做的(控件的名称pos,其中最初生成的几个个文件为:
PosImpl1.cpp、PoxXControl1.cpp、Posxcontrol1_tlb、Posxcontrol1_ATL;
新加的窗体:frmSetup)
void __fastcall TfrmSetup::ButtonOKClick(TObject *Sender)
{
TPosImpl *posIml ;
posIml = new TPosImpl(this); if ( posIml->PComName == "COM1" ) ComConfig.Comport= 1;
if ( posIml->PComName == "COM2" ) ComConfig.Comport= 2;
..........
}
由Tbutton派生
在控件的*impl.cpp文件的public 中定义了一些变量,
然后在这个工程文件中我加了一个窗体,当点击该窗体上的“确定”按钮后
我想获得这些变量的值。
我是这样做的(控件的名称pos,其中最初生成的几个个文件为:
PosImpl1.cpp、PoxXControl1.cpp、Posxcontrol1_tlb、Posxcontrol1_ATL;
新加的窗体:frmSetup)
void __fastcall TfrmSetup::ButtonOKClick(TObject *Sender)
{
TPosImpl *posIml ;
posIml = new TPosImpl(this); if ( posIml->PComName == "COM1" ) ComConfig.Comport= 1;
if ( posIml->PComName == "COM2" ) ComConfig.Comport= 2;
..........
}
[C++ Error] Setup.cpp(107): E2451 Undefined symbol 'TPos'
[C++ Error] Setup.cpp(107): E2352 Cannot create instance of abstract class 'TPosImpl'
[C++ Error] Setup.cpp(107): E2353 Class 'TPosImpl' is abstract because of '__stdcall TPosImpl::AddRef() = 0'要是有其他方法,能让我以其他方式解决这个问题也可以
[C++ Error] Setup.cpp(107): E2451 Undefined symbol 'TPos'
[C++ Error] Setup.cpp(107): E2352 Cannot create instance of abstract class 'TPosImpl'
[C++ Error] Setup.cpp(107): E2353 Class 'TPosImpl' is abstract because of '__stdcall TPosImpl::AddRef() = 0'要是有其他方法,能让我以其他方式解决这个问题也可以
[C++ Error] Setup.cpp(107): E2451 Undefined symbol 'TPos'
[C++ Error] Setup.cpp(107): E2352 Cannot create instance of abstract class 'TPosImpl'
[C++ Error] Setup.cpp(107): E2353 Class 'TPosImpl' is abstract because of '__stdcall TPosImpl::AddRef() = 0'要是有其他方法,能让我以其他方式解决这个问题也可以
2,TPosImpl类是一个虚基类,你必须继承并且重载AddRef函数才能实例化。