在 Abc.hpp 文件中定义了以下信息:
class Abc: public A
{
enum Ac { VAR };
struct L{
std::string s1;
::Class2::ID type;
unsigned s;
bool operator==(const L& l) const { return (type==l.type)&&(s==l.s)&&(s==l.s); }
};
class SS
{
public:
virtual ~SS();
};
class IS {
public:
/// Destructor
virtual ~IS();
};
class HashIndexImplementation;
class HashIndex;
void func(){}
Abc& operator=(Abc&) {
cout << "A::operator=(A&)" << endl;
return *this;
} //It gives me the error that the token '{' is not recognized
Abc(Class2 & part);
};
对于上述课程,旨在为我的目的与另一个课程分配以下信息:
Abc d;
static Abc f;
f=d;
但是,我上面写的代码不起作用......它抛出的错误是:
no matching function for call to Abc::Abc()
编辑:我正在处理整个类的层次结构,因此如果我添加另一个像 Abc() 这样的构造函数,那么我将被迫在多达 20 个类中进行更改......是否没有其他方法可以用于分配。有什么方法可以让我合并其他构造函数。