#include<iostream>
using namespace std;
class A
{
public:
A(const int a):m_a(a) {}//覆盖了默认构造函数
int m_a;
};
struct B
{
public:
B() {}
A a{ 10 };//我的意图是定义一个A类的对象,并初始化它的成员,这个位置貌似只能用列表初始化,如果用括号,编译器会识别为定义一个返回类型是A类的函数
};
struct C
{
public:
A a{ 20 };
};
int main()
{
B p;
cout << p.a.m_a << endl;
C p1;
cout << p1.a.m_a << endl;
}