Eu tenho uma estrutura com muitos membros do mesmo tipo, como este
struct VariablePointers {
VariablePtr active;
VariablePtr wasactive;
VariablePtr filename;
};
O problema é que, se eu esquecer de inicializar um dos membros struct (por exemplo wasactive
), assim:
VariablePointers{activePtr, filename}
O compilador não irá reclamar disso, mas terei um objeto parcialmente inicializado. Como posso evitar esse tipo de erro? Eu poderia adicionar um construtor, mas duplicaria a lista de variáveis duas vezes, então eu tenho que digitar tudo isso três vezes!
Adicione também respostas C ++ 11 , se houver uma solução para C ++ 11 (atualmente estou restrito a essa versão). Padrões linguísticos mais recentes também são bem-vindos!
-Wmissing-field-initializers
sinalizador de compilação.