sub_cktmgr正从CPmanager的CpGenricManger和CpGenricManger中获取。 请在下面找到层次结构。
//CPManager COnstructor
cpManager();
cpManager(const cpManagerResource &m);
cpManager(cpObjectNotify *p);
cpManager(const cpManagerResource &m, cpObjectNotify *p);
//CpGenricManger Constructor
class cpGenericMgr: public cpManager{
public:
cpGenericMgr(const std::string& serviceName);
cpGenericMgr(const cpManagerResource &m,const std::string& serviceName);
cpGenericMgr(cpObjectNotify *p,const std::string& serviceName);
cpGenericMgr(const cpManagerResource &m,cpObjectNotify *p,
const std::string& serviceName);
// Destructor
virtual ~cpGenericMgr();
}
//Sb_cktmgr
SB_CktMgr::SB_CktMgr(const cpManagerResource &m, const String& svcName) :
cpGenericMgr(m, svcName){
cpUdata dsm(USER_DATA);
this->userData(dsm);
即使层次结构正确,我们仍然会收到以下错误。有人可以建议。
Error: Could not find cpGenericMgr::cpGenericMgr(const cpManagerResource, const String) to initialize base class.
答案 0 :(得分:3)
您还没有定义构造函数:
cpGenericMgr::cpGenericMgr(const cpManagerResource&, const String&)
仅
cpGenericMgr::cpGenericMgr(const cpManagerResource&, const std::string&)
已定义。
将String
投射到std::string
或使用const String&
定义构造函数