Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sem13 POO - POO Aplicaciones en Visual C++
Sem13 POO - POO Aplicaciones en Visual C++
UNIDADES DE APRENDIZAJE 5
int main() {
// Instanciando myObj (objeto) de MyClass (clase)
MyClass myObj;
return 0;
}
Universidad Nacional de Ingeniería Facultad de Ingeniería Mecánica MB545 POO | Prof: Ing. Roberto Tello Yuen
Vehiculo VehObj2;
VehObj2.marca = "FORD";
VehObj2.modelo = “FORLAND EDGE";
VehObj1 VehObj2
VehObj2.aniofab = 1969;
cout << VehObj1.marca <<" "<< VehObj1.modelo <<" "<< VehObj1.aniofab << endl;
cout << VehObj2.marca <<" "<< VehObj2.modelo <<" "<< VehObj2.aniofab << endl;
return 0;
}
Universidad Nacional de Ingeniería Facultad de Ingeniería Mecánica MB545 POO | Prof: Ing. Roberto Tello Yuen
CLASE – MÉTODOS (interno/externo)
int main() {
Vehiculo VehObj1("TOYOTA", "COROLLA XLI", 2011);
Vehiculo VehObj2("FORD", "MUSTANG", 1969);
cout << VehObj1.marca <<" "<< VehObj1.modelo <<" "<< VehObj1.aniofab << "\n";
cout << VehObj2.marca <<" "<< VehObj2.modelo <<" "<< VehObj2.aniofab << "\n";
return 0;
}
Universidad Nacional de Ingeniería Facultad de Ingeniería Mecánica MB545 POO | Prof: Ing. Roberto Tello Yuen
#include <iostream> CLASE– MÉTODO(CONSTRUCTOR) - Atributo
using namespace std;
class Vehiculo {
public:
string marca;
string modelo;
int aniofab;
Vehiculo(string, string, int);
};
int main() {
Vehiculo VehObj1("TOYOTA", "COROLLA XLI", 2011);
Vehiculo VehObj2("FORD", "MUSTANG", 1969);
cout << VehObj1.marca <<" "<< VehObj1.modelo <<" "<< VehObj1.aniofab << "\n";
cout << VehObj2.marca <<" "<< VehObj2.modelo <<" "<< VehObj2.aniofab << "\n";
return 0;
}
Universidad Nacional de Ingeniería Facultad de Ingeniería Mecánica MB545 POO | Prof: Ing. Roberto Tello Yuen
HERENCIA (TIPOS)
Objeto Objeto
Hijo 3 4
Objeto
2
Hijo
Nieto
#include <iostream>
Conceptos: using namespace std;
class ClasePadre {
HERENCIA MULTIPLE: public:
void imprime_padre() {
Una clase también se puede derivar de más de cout << "Aviso en evento de clase padre\n";
}
una clase base, usando una lista separada por };
comas. class ClaseMadre {
public:
void imprime_madre() {
cout << "Aviso en evento de clase madre\n";
}
Padre Madre };
class ClaseHijo : public ClasePadre, public ClaseMadre
{
public:
objeto objeto void imprime_hijo() {
cout << "Aviso en evento de clase hijo\n";
}
Hijo };
int main() {
ClaseHijo myObj;
myObj myObj.imprime_hijo();
myObj.imprime_padre();
myObj.imprime_madre();
return 0;
}
Universidad Nacional de Ingeniería Facultad de Ingeniería Mecánica MB545 POO | Prof: Ing. Roberto Tello Yuen
ESPECIFICADORES (TIPOS) DE ACCESO
“private (default) – protected – public”
#include <iostream>
#define UIT 4400 int main() {
using namespace std; int xsueldo;
Programador Prog1;
class Empleado {
protected: cout << "Ingrese sueldo: "; cin >> xsueldo;
int sueldo; Prog1.setSueldo(xsueldo);
};
if (Prog1.getSueldo() <= UIT)
class Programador : public Empleado { Prog1.bono = 200;
else
public:
Prog1.bono = 0;
int bono;
void setSueldo(int _sueldo) {
cout << "Sueldo: " << Prog1.getSueldo() << "\n";
sueldo = _sueldo;
cout << "Bono..: " << Prog1.bono << "\n";
}
int getSueldo() {
return 0;
return sueldo;
}
}
};
Universidad Nacional de Ingeniería Facultad de Ingeniería Mecánica MB545 POO | Prof: Ing. Roberto Tello Yuen
Conceptos:
class Cubo { // Clase
DESTRUCTOR: private:
string figura;
Un destructor es una función miembro especial int arista;
de una clase que se ejecuta cada vez que un float peso;
objeto de su clase sale del alcance o siempre
public:
que la expresión de eliminación se aplica a un
Cubo(string, int, float); // Constructor
puntero al objeto de esa clase.
~Cubo(); // Destructor
Cubo::~Cubo() {
cout << "\nSe elimina el objeto ...\n";
}
Universidad Nacional de Ingeniería Facultad de Ingeniería Mecánica MB545 POO | Prof: Ing. Roberto Tello Yuen
#include <iostream>
CONSTRUCTOR - DESTRUCTOR
using namespace std;
Cubo::~Cubo() {
cout << "\nSe elimina el objeto ...\n";
}
void Cubo::Imprimir() {
cout << "\nEl cubo es un(a) " << figura << endl;
cout << "Su volumen es " << pow(arista, 3) << endl;
}
Universidad Nacional de Ingeniería
Facultad de Ingeniería Mecánica
Curso: MB545 Programación Orientada a Objetos | Profesor: Ing. Roberto Tello Yuen
UNIDADES DE APRENDIZAJE 5