iniciante na área de novo
A intenção não seria no caso discutir sobre árvore genealógica ou qualquer coisa do tipo. Seria somente aprender sobre como aplicar a herança e interagir com ela. O que fiz você disse que foi apenas "redeclarar" as variáveis. O que não to sacando de herança é que o sentido disso não seria herdar as características como o Mauro citou acima? Digamos que o que tentei fazer seja um programa ...eu queria ver se "herava" os dados do avô, tipo assim nesse trecho:
class Avo{
public:
int idade, carros, casas;
//CONSTRUTOR
public:
Avo(int i, int car, int cas){
idade = i;
carros = car;
casas = cas;
};
/*DESTRUTOR
~Avo(){
cout << "Vazio" << endl;
}
*/
//SETTERS AND GETTERS
void setsalario(int s){
salario = s;
}
int getsalario(){
return salario;
}
void setprofissao(string p){
profissao = p;
}
string getprofissao(){
return profissao;
}
Herdar não seria aplicar aqui por exemplo
class Pai: public Avo{
public:
int Idade, Carros, Casas;
public:
Pai(int i, int car, int cas):Avo(i, car, cas){
};
};
E ter como resultado a representação dos mesmos dados do Avô?
Resultado
Avo - Caracteristicas
Idade: 65 Carros: 6 Casas: 4
Salario: 10000
Profissao: Engenheiro
Pai - Caracteristicas
Idade: 40 Carros: 3 Casas: 2
Salario: 7000
Profissao: Analista de Sistemas
Filho - Caracteristicas
Idade: 23 Carros: 1 Casas: 1
Salario: 3000
Profissao: Professor
E eu rodei o seu programa e entendi ele sim. Apenas o que fiz não é herança? Eu aprendi a fazer daquela forma a partir de sites como w3schools, geeksforgeeks etc...