J'ai une structure avec de nombreux membres du même type, comme ceci
struct VariablePointers {
VariablePtr active;
VariablePtr wasactive;
VariablePtr filename;
};
Le problème est que si j'oublie d'initialiser l'un des membres de la structure (par exemple wasactive
), comme ceci:
VariablePointers{activePtr, filename}
Le compilateur ne s'en plaindra pas, mais j'aurai un objet partiellement initialisé. Comment éviter ce genre d'erreur? Je pourrais ajouter un constructeur, mais cela dupliquerait la liste des variables deux fois, donc je dois taper tout cela trois fois!
Veuillez également ajouter des réponses C ++ 11 , s'il existe une solution pour C ++ 11 (actuellement, je suis limité à cette version). Les normes linguistiques plus récentes sont également les bienvenues!
-Wmissing-field-initializers
drapeau de compilation.