Red de conocimiento informático - Problemas con los teléfonos móviles - Preguntas de programación de VC ++, domine cómo implementar clases derivadas de clases sobre la base de clases y domine la llamada de constructores y destructores en la herencia de clases. Te ruego que me agradezcas~~

Preguntas de programación de VC ++, domine cómo implementar clases derivadas de clases sobre la base de clases y domine la llamada de constructores y destructores en la herencia de clases. Te ruego que me agradezcas~~

Siempre que estudies mucho, podrás resolver problemas tan básicos por ti mismo.

Personas de clase

{

Público:

persona();

Persona(const char* nombre , int id, int género);

Virtual~persona();

Público:

nombre del conjunto vacío (const char * nombre);

const char * GetName()const;

void SetId(int id);

int GetId()const;

void set genero( int género);

int GetGender()const;

Privado:

char * nombre_;

int id_;

int género _;

};

Alumnos de la clase: figuras públicas

{

Público:

p>

persona();

Persona(const char* nombre, int id, int género, int grado);

~ Persona();

Público:

int get calificación()const;

void set calificación(int calificación);

Privado:

int grado _;

};

Profesor de clase: figura pública

{

Público:

Profesor () ;

Profesor(const char* nombre, int id, int género, int techerAge);

~teacher();

Público:

int GetTeacherAge() const;

void SetTeacherAge(int edad);

Privado:

int teacherAge_;

};

// -

Persona::Persona(): nombre_(0), id_(0), género(1)

{

}

Persona::Persona(const char* nombre, int id, int género)

:Nombre_(nombre), DNI_(DNI ), género_(género)

{

int len ​​​​= strlen(nombre);

nombre _ = nuevo char[len+1];

p>

memcpy(nombre_, nombre, len+1);

}

Personal::~Personal()

{ STD ::salir & lt; =0? "Mujer":"Hombre";

if(nombre _)eliminar[]nombre _;

}

void Persona::establecer nombre(const char * nombre);

{

if(nombre _)eliminar[]nombre _;

int len ​​​​= strlen(nombre)+1;

nombre _ = nuevo char[len];

memcpy(nombre_, nombre, len);

}

const char * Persona::GetName()const

{

Devolver nombre_;

}

persona vacía::SetId(int id)

{

id _ = id

}

int Persona::GetId() const

{

ID de retorno _;

}

void SetGender(int género)

{

género _ = género

}

int GetGender() const

{

Devolver género_;

}

// -

Estudiante::Estudiante():Persona()

{

}

Estudiante::Estudiante(const char* nombre, int id, int género, int grado)

:Personal(nombre, id, Género) , grado_(gread)

{

}

Estudiante::~Estudiante()

{

}

int GetGrade() constante

{

return grade_;

}

Calificación de colección no válida ( int nota)

{

nota _ = nota;

}

// -

Profesor: :Profesor():persona()

{

}

Profesor::Profesor(const char * nombre, int id, int género, int techerAge)

: Personal (nombre, id, género), nivel técnico_(nivel técnico)

{

}

Profesor::~ Profesor()

{

}

int GetTecherAge() const

{

Tecnología de retorno_;

}

void SetTecherAge(entero)

{

teacherAge_ = edad;

}

// -

int main()

{

nombre de char[MAX _ PATH];

int id

int género;

{

STD::cout & lt; & lt"Ingrese el nombre, identificación y género de la persona (0: Mujer, 1: Hombre) : " STD::endl;

STD::CIN>>Nombre>& gtid>& gtGénero;

Personaje (nombre, DNI, sexo);

}

{

STD::cout <& ltIngrese el nombre del estudiante, cédula de identidad y sexo (0: femenino, 1: masculino), calificación: "& lt& ltSTD::endl;

int grade;

STD::CIN & gt; & gtname & gt& gtid & gt& gtgender & gt& gtLevel;

Estudiante estudiante (nombre, DNI , género, grado);

}

{

STD: :cout & lt;& ltIngrese el nombre del maestro, identificación, género (0: mujer, 1: masculino), nivel técnico: "& lt& ltSTD::endl;

int edad

Techer techer (nombre, DNI, sexo,

Edad);

}

Devuelve 0;

}