Можно создать анонимный объект, который инициализируется с помощью параметров конструктора, например, в инструкции return.Могу ли я создать анонимный, скопированный инициализированный агрегат в C++?
struct S {
S(int i_, int j_) : i(i_), j(j_) { }
int i, j;
};
S f()
{
return S(52, 100);
}
int main()
{
cout << f().i << endl;
return 0;
}
Однако можно один так же создать анонимный совокупный, который инициализируется с брекет инициализатором? Например, можно свернуть тело f() ниже, вплоть до одного оператора возврата без «s?»?
struct S {
int i, j;
};
S f()
{
S s = { 52, 100 };
return s;
}
int main()
{
cout << f().i << endl;
return 0;
}
Dang, похоже, ответ будет, нет ... – plong