Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* inicio de main.cpp */
- #include <iostream>
- #include "triangulo.h"
- #include "equilatero.h"
- using namespace std;
- int main() {
- std::cout << "Herencia:\n=========\n";
- int el_perimetro;
- std::cout << "\nEjemplo verde:\n";
- Triangulo verde;
- verde.ver();
- verde.setLados(3, 4, 5);
- verde.ver();
- el_perimetro = verde.perimetro();
- cout << "perimetro " << el_perimetro << endl;
- std::cout << "\nEjemplo azul:\n";
- Equilatero azul;
- azul.ver();
- azul.setLado(8);
- azul.ver();
- el_perimetro = azul.perimetro();
- cout << "perimetro " << el_perimetro << endl;
- std::cout << "\n --- fin del programa --- \n";
- }
- /* fin de main.cpp */
- /* inicio de triangulo.h */
- #ifndef TRIANGULO_H
- #define TRIANGULO_H
- class Triangulo
- {
- public:
- Triangulo();
- ~Triangulo();
- void setLados(int a, int b, int c);
- void ver();
- int perimetro();
- protected:
- int lado1;
- int lado2;
- int lado3;
- private:
- };
- #endif // TRIANGULO_H
- /* fin de triangulo.h */
- /* inicio de triangulo.cpp */
- #include <iostream>
- #include "triangulo.h"
- Triangulo::Triangulo()
- {
- lado1 = 1;
- lado2 = 1;
- lado3 = 1;
- }
- Triangulo::~Triangulo()
- {
- std::cout << "soy el destructor, ";
- std::cout << "mis lados: ";
- std::cout << this->lado1 << ", ";
- std::cout << this->lado2 << ", ";
- std::cout << this->lado3 << ".\n";
- }
- void Triangulo::ver()
- {
- std::cout << "mis lados: ";
- std::cout << this->lado1 << ", ";
- std::cout << this->lado2 << ", ";
- std::cout << this->lado3 << ".\n";
- }
- int Triangulo::perimetro()
- {
- return this->lado1+this->lado2+this->lado3;
- }
- void Triangulo::setLados(int a, int b, int c)
- {
- this->lado1 = a;
- this->lado2 = b;
- this->lado3 = c;
- }
- /* fin de triangulo.cpp */
- /* inicio de equilatero.h */
- #ifndef EQUILATERO_H
- #define EQUILATERO_H
- class Equilatero : public Triangulo
- {
- public:
- void setLado(int a);
- /*
- private:
- int lado1;
- int lado2;
- int lado3;
- */
- };
- #endif // EQUILATERO_H
- /* fin de equilatero.h */
- /* inicio de equilatero.cpp */
- #include "triangulo.h"
- #include "equilatero.h"
- void Equilatero::setLado(int a)
- {
- this->lado1 = a;
- this->lado2 = a;
- this->lado3 = a;
- }
- /* fin de equilatero.cpp */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement