Это n-й вопрос об этом, но я не смог найти точный дубликат...
Предположим, что следующий код:
#include <iostream>
struct S {
int x;
int y;
};
class C {
public:
S s;
C() : s{123, s.x} {}
};
int main() {
std::cout << C().s.y << '\n';
}
Можно ли инициализировать s.y
следующим образом? (только JetBrains ReSharper жалуется на это со следующим: Object member this->s.x might not be initialized
).
Было бы здорово, если бы кто-то подтвердил свой ответ цитатой из стандарта.