Вчера я обнаружил, что пишу код следующим образом:
SomeStruct getSomeStruct()
{
SomeStruct input;
cin >> input.x;
cin >> input.y;
}
Конечно, забываем фактически вернуть только что созданную структуру. Как ни странно, значения в структуре, которые были возвращены этой функцией, были инициализированы до нуля (при компиляции с использованием g++, который есть). Это просто совпадение или другой SomeStruct создается и инициализируется где-то неявно?