Erro C2626 do compilador
“identificador“: um membro de dados privado ou protegido não é permitido em uma estrutura ou sindicato anônimos
Um membro de uma estrutura ou sindicato anônimos deve ter acesso público.
O seguinte exemplo gera C2626:
// C2626.cpp
int main() {
union {
protected:
int j; // C2626, j is protected
private:
int k; // C2626, k is private
};
}
Para corrigir esse problema, remova todas as marcas privadas ou protegidas:
// C2626b.cpp
int main() {
union {
public:
int i; // OK, i is public
};
}