Tag: inheritance
estudar1920 – as heranças simples, em c++
As heranças “simples”, herança única, tem como precipícios que a classe que for derivada herda:
se o acesso for private: herda os membros públicos e protegidos como privados;
se o acesso for protected: herda os membros públicos e protegidos como protegidos;
se o acesso for public: herda exatamente os mesmos níveis de proteção dos membros da classe-base;
exemplo:
#include <iostream>
using namespace std;
class Veiculo
{
private:
int passageiros, velocidade;
public:
Veiculo();
~Veiculo();
int getPassageiros();
void setPassageiros(int p);
int getVelocidade();
void setVelocidade(int v);
void Imprime();
};
Veiculo::Veiculo()
{
}
Veiculo::~Veiculo()
{
cout << "\ndestrutor do veiculo com velocidade " << getVelocidade() << endl;
passageiros = NULL;
velocidade = NULL;
}
void Veiculo::setPassageiros(int p)
{
passageiros = p;
}
int Veiculo::getPassageiros()
{
return passageiros;
}
void Veiculo::setVelocidade(int v)
{
velocidade = v;
}
int Veiculo::getVelocidade()
{
return velocidade;
}
void Veiculo::Imprime()
{
cout << "\nImprime do Veiculo com velocidade " << getVelocidade() << endl;
}
//as heranças
class Automovel : public Veiculo
{
private:
string tipo;
public:
Automovel();
~Automovel();
void setTipo(string s);
string getTipo();
void Imprime();
};
Automovel::Automovel()
{
}
Automovel::~Automovel()
{
cout << "\ndestrutor do automovel com velocidade: " << getVelocidade() <<endl;
tipo = "";
}
void Automovel::setTipo(string s)
{
tipo = s;
}
string Automovel::getTipo()
{
return tipo;
}
void Automovel::Imprime()
{
cout << "\nImprime do Automovel com velocidade: " << getVelocidade() << endl;
}
class Comboio : public Veiculo
{
private:
int carruagens;
public:
Comboio();
~Comboio();
void setCarruagens(int c);
int getCarruagens();
void Imprime();
};
Comboio::Comboio()
{
}
void Comboio::setCarruagens(int c)
{
carruagens = c;
}
int Comboio::getCarruagens()
{
return carruagens;
}
Comboio::~Comboio()
{
cout << "\ndestrutor do comboio com velocidade " << getVelocidade() << endl;
}
void Comboio::Imprime()
{
cout << "\nImprime do Comboio com velocidade " << getVelocidade() << endl;
}
int main()
{
Veiculo vei1;
vei1.Imprime();
Automovel auto1, auto2;
auto1.setTipo("renault");
auto1.setVelocidade(120);
auto1.setPassageiros(4);
auto1.Imprime();
Comboio comb1;
comb1.setCarruagens(4);
comb1.setVelocidade(220);
comb1.Imprime();
return 0;
}
Tags : herança, inheritance, Learn C plus plus
estudar09 – classes e a herança ()
#include
#include
using namespace std;
class pai{
public:
void dinheiro(){
cout << "eu sou um milionario";
}
};
class filho : public pai{
//a classe filho herdou a função do pai através do principio da herança;
public:
};
int main(int argc, char** argv) {
filho s;
s.dinheiro();
return 0;
}
Tags : Classes, herança, inheritance, Learn C plus plus