Acabo de querer aclarar algo. ¿Las clases base abstractas nunca deben tener miembros privados? Por ejemploC++ miembros privados de la clase base abstracta
class abc{
public:
virtual void foo()=0;
private:
int myInt;
}
nunca se puede acceder a myInt ya no se puede crear una instancia de abc y no va a estar en una clase derivada desde su privado. ¿Hay alguna situación en la que use miembros privados en clases base abstractas o es simplemente incorrecto?
Un miembro privado de esa manera no tiene sentido en una clase abstracta, del mismo modo que no tiene sentido en * cualquier otra * clase. –
@MartinhoFernandes: ¿Estás diciendo que los miembros de datos privados nunca tienen sentido o estás diciendo algo sobre 'int' o' myInt' en particular? –
Estoy diciendo que los miembros de datos privados que no se usan * en ningún lado * no tienen sentido.'class abc {public: virtual void foo() {};/* ya no es abstracto */private: int myInt; 'no hace que myInt sea más útil. –