我有以下三个类定义:
class String
{
public:
String() {}
String(const char *) {}
};
class ClassA
{
public:
ClassA(const String &) {}
};
class ClassB
{
public:
ClassB(const ClassA &, const String & = String()) {}
void method() {}
};
现在假设我想创建一个实例ClassB
:
String name("test");
ClassA item(ClassB(name));
这不起作用:
错误:在“item”中请求成员“method”,它是非类的 输入“A类()(B类)”
这个错误是什么意思?ClassA ()(ClassB)
编译器一直引用的这种奇怪的类型是什么?