为什么外部类不能创建内部类的对象?
class d {
public:
int data = 90;
static const int n = 9;
class t {
friend class d;
int yy = 0;
public:
int y;
t(int b) :y(b) {};
const int v = d::n;//тк статик не через объект
};
t nn(3);//ошибка?
问题在括号中。在类内部,编译器总是将它们作为函数参数列表。使用以下之一:
t nn = 3;t nn{3};t nn = t(3);