У меня есть структура со многими членами одного типа, как это
struct VariablePointers {
VariablePtr active;
VariablePtr wasactive;
VariablePtr filename;
};
Проблема в том, что если я забуду инициализировать один из членов структуры (например wasactive
), например:
VariablePointers{activePtr, filename}
Компилятор не будет жаловаться на это, но у меня будет один объект, который частично инициализирован. Как я могу предотвратить подобные ошибки? Я мог бы добавить конструктор, но он дважды продублировал бы список переменных, так что мне пришлось бы напечатать все это трижды!
Пожалуйста, также добавьте ответы C ++ 11 , если есть решение для C ++ 11 (в настоящее время я ограничен этой версией). Более поздние языковые стандарты также приветствуются!
-Wmissing-field-initializers
флаг компиляции.