Si elimino una clase, ¿se eliminan automáticamente sus variables miembro?
He estado investigando, y no ha surgido nada relevante, así que vine aquí.
Estoy tratando de evitar pérdidas de memoria, así que me pregunto:
Di que tengo claseMyClass
con miembroint
s a
yb
, y unint array c
, que se completan en una función miembro:
class MyClass
{
public:
int a, b;
int c[2];
void setVariables()
{
a, b = 0;
for (int i = 0; i < 2; i++)
{
c[i] = 3;
}
}
};
int main(int argc, char* argv[])
{
MyClass* mc = new MyClass();
mc->setVariables();
delete mc;
}
Ahora, después de llamar adelete mc
, seráa
, b
, y todos los contenidos dec
ser eliminado también? ¿O tendré que hacer eso explícitamente en el destructor deMyClass
?