SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
8.Clases y objetos en C++
Un análisis más detallado
Ramiro Estigarribia Canese
¿Qué es una Clase?
➔ La programación orientada a objetos se basa en las
clases.
➔ Una clase es un molde del que luego se pueden
crear múltiples objetos, con similares
características.
➔ Una clase es una plantilla (molde), que define
atributos (variables) y métodos (funciones).
➔ La clase define los atributos y métodos comunes a
los objetos de ese tipo, pero luego, cada objeto
tendrá sus propios valores.
Estructura de una Clase
Debemos crear una clase antes de poder crear objetos
(instancias) de esa clase.
Al crear un objeto de una clase, se dice que se crea
una instancia de la clase o un objeto.
La estructura de una clase es:
class [nombre de la clase] {
[atributos o variables de la clase]
[métodos o funciones de la clase]
}
1.Clase Persona.
#include <iostream>
using namespace std;
class Persona {
public:
char Nombre[30];
int Edad;
void inicializar() {
cout <<"Ingrese Nombre y Edad"<<endl;
cin >> Nombre >> Edad;
}
void imprimir() {
cout << "Nombre:" << Nombre << endl ;
cout << "Edad:" << Edad << endl;
}
void EsMayor() {
if (Edad>=18)
cout <<"Es Mayor de Edad";
else
cout <<"Es Menor de Edad";
}};
int main()
{
Persona UnaPersona;
UnaPersona.inicializar();
UnaPersona.imprimir();
UnaPersona.EsMayor();
return 0;
}
Bajar Código Aquí
Clase Triángulo Equilátero.
//2.Lados de un triángulo.
//Identifica el lado Mayor.
//Identifica si es Equilátero.
#include <iostream>
using namespace std;
class Triangulo {
public:
int lado1,lado2,lado3;
void inicializar() {
cout << "Medida lado 1:";
cin >> lado1;
cout << "Medida lado 2:";
cin >> lado2;
cout << "Medida lado 3:";
cin >> lado3;
}
void ladoMayor() {
cout << "Lado mayor:";
if (lado1>lado2 && lado1>lado3)
cout << lado1;
else if (lado2>lado3)
cout << lado2;
else cout << lado3; }
void esEquilatero() {
if (lado1==lado2 && lado1==lado3)
cout << "nEs equilátero";
else
cout << "nNo es equilátero"; }};
int main() {
Triangulo triangulo1;
triangulo1.inicializar();
triangulo1.ladoMayor();
triangulo1.esEquilatero();
return 0; }
2.Clase Triángulo.
Bajar Código: https://paste.ee/p/lLDEa
¿Qué es un Constructor?
Es un un método que se ejecuta al inicio de forma
automática, y que sirve para inicializar un objeto.
Características:
1. Tiene el mismo nombre de la clase.
2. No puede retornar datos.
3. Se ejecuta una única vez.
Ejemplo:
public MismoNombreQueLaClase (tipo parámetro1, ...tipo parámetro n)
{
campo1 = valor o parámetro;
.
campo n = valor o parámetro;
}
Colaboración de clases
Normalmente un problema resuelto con la metodología
de programación orientada a objetos no interviene una
sola clase, sino que hay muchas clases que interactúan
y se comunican.
Plantearemos un problema separando las actividades en
dos clases.
Ejemplo:
➔ Un banco tiene 3 clientes que pueden hacer
depósitos y extracciones.
➔ El banco requiere al final saber el total de dinero.
3. Clase Cliente y Banco.
Atributos y Métodos.
Cliente
atributos
nombre
monto
métodos
depositar
extraer
Banco
atributos
1 Cliente
métodos
operar
Pasos para ejecutar el ejemplo:
1. Crear un Proyecto: Banco, copiar el primer código.
2. Hacer click en NewFile, elegir Java, y nombre:Cliente: Aquí copiar el 2do. código.
#include <iostream>
using namespace std;
class Cliente {
public:
int monto;
char nombre[30];
void depositar(int m) {
monto=monto+m; }
void extraer(int m) {
monto=monto-m; }
void imprimir(void) {
cout << nombre << " tiene depositado " <<
monto; } };
class Banco {
public:
Cliente cliente1;
Banco() {
cout << "Ingrese el Nombre y el Monto
Inicial: ";
cin >> cliente1.nombre;
cin >> cliente1.monto; }
void operar() {
cliente1.depositar (70);
cliente1.extraer (30);
cliente1.imprimir(); } };
int main()
{
Banco banco1;
banco1.operar();
return 0;
}
https://paste.ee/p/EidfR
¿Qué es un Puntero?
➔ Un puntero es una variable que da referencia a una
región de memoria; en otras palabras es una variable
cuyo valor es una dirección de memoria.
➔ Si se tiene una variable A de tipo puntero que
contiene una dirección de memoria en la que se
encuentra almacenado un valor B se dice que A
apunta a B.
➔ El programador utilizará punteros para guardar datos
en memoria en muchas ocasiones.
Operadores de Punteros
➔ El operador dirección ( & ) obtiene la dirección de
memoria de su operando.
Por ejemplo, teniendo en cuenta las declaraciones:
➔ int x = 5; // declara la variable
➔ int *Puntero; // declara la variable apuntador.
Entonces, se dice que Puntero apunta a x.
4.Ejemplo: Puntero y valor.
#include <iostream>
using namespace std;
int main()
{
int valor; // valor es un entero
int *puntero; // puntero
valor = 7; // se asigna 7 a la variable
puntero = &valor; // se asigna la dirección al Puntero.
cout << "La direccion de valor es " << &valor << endl;
cout << "El valor del puntero es " << puntero << endl;
cout << "El valor de valor es " << valor << endl;
cout << "El valor de *Puntero es " << *puntero << endl;
return 0; // indica que terminó correctamente
} // fin de main
5.Número al Cubo.
#include <iostream>
using namespace std;
int cubo(int); // prototipo
int main()
{
int numero = 5;
cout << "El valor es " << numero;
numero = cubo(numero); // pasa el numero a cubo
cout << "nEl nuevo valor es " << numero << endl;
return 0; // indica que terminó correctamente
} // fin de main
int cubo(int n) // calcula y devuelve el cubo
{
return n*n*n; // eleva al cubo
} // fin de la función cubo

Más contenido relacionado

La actualidad más candente

Programación modular en Introducción a la Programación
Programación modular en Introducción a la ProgramaciónProgramación modular en Introducción a la Programación
Programación modular en Introducción a la ProgramaciónFacultad de Ciencias y Sistemas
 
Diagrama UML de Clases
Diagrama UML de ClasesDiagrama UML de Clases
Diagrama UML de ClasesAdal Dg
 
Programación Orientada a Objetos - Unidad 5 Excepciones
Programación Orientada a Objetos - Unidad 5 ExcepcionesProgramación Orientada a Objetos - Unidad 5 Excepciones
Programación Orientada a Objetos - Unidad 5 ExcepcionesJosé Antonio Sandoval Acosta
 
Programación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetosProgramación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetosJosé Antonio Sandoval Acosta
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Giancarlo Aguilar
 
Herencia - Programación Orientada a Objetos
Herencia - Programación Orientada a ObjetosHerencia - Programación Orientada a Objetos
Herencia - Programación Orientada a ObjetosMario Villaseñor
 
Clases abstractas e interfaces
Clases abstractas e interfacesClases abstractas e interfaces
Clases abstractas e interfaceslopezcortes
 
Autómatas de Pila
Autómatas de PilaAutómatas de Pila
Autómatas de PilaPablo Guerra
 
Final keyword in java
Final keyword in javaFinal keyword in java
Final keyword in javaHitesh Kumar
 
PERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSPERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSDarwin Durand
 
Propiedades De La Poo
Propiedades De La PooPropiedades De La Poo
Propiedades De La Pooda4
 
Elementos de una clase
Elementos de una claseElementos de una clase
Elementos de una claseIsaias Toledo
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..NANO-06
 

La actualidad más candente (20)

Programación modular en Introducción a la Programación
Programación modular en Introducción a la ProgramaciónProgramación modular en Introducción a la Programación
Programación modular en Introducción a la Programación
 
Diagrama UML de Clases
Diagrama UML de ClasesDiagrama UML de Clases
Diagrama UML de Clases
 
Programación Orientada a Objetos - Unidad 5 Excepciones
Programación Orientada a Objetos - Unidad 5 ExcepcionesProgramación Orientada a Objetos - Unidad 5 Excepciones
Programación Orientada a Objetos - Unidad 5 Excepciones
 
7 Curso de POO en java - diagrama de clases
7 Curso de POO en java - diagrama de clases7 Curso de POO en java - diagrama de clases
7 Curso de POO en java - diagrama de clases
 
Programación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetosProgramación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetos
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.
 
P.O.O.
P.O.O.P.O.O.
P.O.O.
 
Pilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datosPilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datos
 
Qué es la poo
Qué es la pooQué es la poo
Qué es la poo
 
Herencia - Programación Orientada a Objetos
Herencia - Programación Orientada a ObjetosHerencia - Programación Orientada a Objetos
Herencia - Programación Orientada a Objetos
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Clases abstractas e interfaces
Clases abstractas e interfacesClases abstractas e interfaces
Clases abstractas e interfaces
 
13 Curso de POO en java - métodos propios de clase
13 Curso de POO en java - métodos propios de clase13 Curso de POO en java - métodos propios de clase
13 Curso de POO en java - métodos propios de clase
 
Autómatas de Pila
Autómatas de PilaAutómatas de Pila
Autómatas de Pila
 
Final keyword in java
Final keyword in javaFinal keyword in java
Final keyword in java
 
PERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSPERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOS
 
Propiedades De La Poo
Propiedades De La PooPropiedades De La Poo
Propiedades De La Poo
 
Elementos de una clase
Elementos de una claseElementos de una clase
Elementos de una clase
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..
 

Destacado

El arte de programar c++ - versión 3.0
El arte de programar   c++ - versión 3.0El arte de programar   c++ - versión 3.0
El arte de programar c++ - versión 3.0javiel162009
 
Programación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación EstructuradaProgramación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación EstructuradaMichael de la Cruz
 
Introducción poo
Introducción pooIntroducción poo
Introducción poog_torrealba
 
TRABAJO CON IMÁGENES
TRABAJO CON IMÁGENESTRABAJO CON IMÁGENES
TRABAJO CON IMÁGENESCeliaTorres22
 
Taller de informática
Taller de informáticaTaller de informática
Taller de informáticaCarlos Farhat
 
Proyectos Documentales Integrados
Proyectos Documentales IntegradosProyectos Documentales Integrados
Proyectos Documentales IntegradosPilar Torres
 
Imagen digital
Imagen digitalImagen digital
Imagen digitalDiegozDiaz
 
imagen digital
imagen digitalimagen digital
imagen digitalrubensk8
 
Conceptos poo progra visual
Conceptos poo progra visualConceptos poo progra visual
Conceptos poo progra visualLibertad25
 
Tratamiento Digital De ImáGenes
Tratamiento Digital De ImáGenesTratamiento Digital De ImáGenes
Tratamiento Digital De ImáGenestecnoeducahoy
 
Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.Juan Carlos Espinoza
 
Archivo Secuencial-Indexado
Archivo Secuencial-IndexadoArchivo Secuencial-Indexado
Archivo Secuencial-Indexadoluismy_martinez
 

Destacado (20)

3.introducción a las clases y objetos en c++
3.introducción a las clases y objetos en c++3.introducción a las clases y objetos en c++
3.introducción a las clases y objetos en c++
 
El arte de programar c++ - versión 3.0
El arte de programar   c++ - versión 3.0El arte de programar   c++ - versión 3.0
El arte de programar c++ - versión 3.0
 
Programación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación EstructuradaProgramación Orientada a Objetos vs Programación Estructurada
Programación Orientada a Objetos vs Programación Estructurada
 
Introducción poo
Introducción pooIntroducción poo
Introducción poo
 
La Clase
La ClaseLa Clase
La Clase
 
TRABAJO CON IMÁGENES
TRABAJO CON IMÁGENESTRABAJO CON IMÁGENES
TRABAJO CON IMÁGENES
 
Taller de informática
Taller de informáticaTaller de informática
Taller de informática
 
Proyectos Documentales Integrados
Proyectos Documentales IntegradosProyectos Documentales Integrados
Proyectos Documentales Integrados
 
Imagen digital
Imagen digitalImagen digital
Imagen digital
 
imagen digital
imagen digitalimagen digital
imagen digital
 
Conceptos poo progra visual
Conceptos poo progra visualConceptos poo progra visual
Conceptos poo progra visual
 
Tratamiento Digital De ImáGenes
Tratamiento Digital De ImáGenesTratamiento Digital De ImáGenes
Tratamiento Digital De ImáGenes
 
Manual C++ 1era Parte
Manual C++ 1era ParteManual C++ 1era Parte
Manual C++ 1era Parte
 
Redes
RedesRedes
Redes
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Taller Encuentro Inicial 323
Taller Encuentro Inicial 323Taller Encuentro Inicial 323
Taller Encuentro Inicial 323
 
Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.
 
2.modelos del proceso
2.modelos del proceso2.modelos del proceso
2.modelos del proceso
 
2.procesos de desarrollo de software
2.procesos de desarrollo de software2.procesos de desarrollo de software
2.procesos de desarrollo de software
 
Archivo Secuencial-Indexado
Archivo Secuencial-IndexadoArchivo Secuencial-Indexado
Archivo Secuencial-Indexado
 

Similar a 8.clases y objetos en c++

Similar a 8.clases y objetos en c++ (20)

8.Clases y objetos Java
8.Clases y objetos Java8.Clases y objetos Java
8.Clases y objetos Java
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Introducción a la Programaciónen Java
Introducción a la Programaciónen JavaIntroducción a la Programaciónen Java
Introducción a la Programaciónen Java
 
Taller 1 2
Taller 1 2Taller 1 2
Taller 1 2
 
03 Oop
03   Oop03   Oop
03 Oop
 
Estructura de Datos
Estructura de DatosEstructura de Datos
Estructura de Datos
 
C sharp intro1
C sharp intro1C sharp intro1
C sharp intro1
 
Semana 6 Módulos Clases y Objetos
Semana 6   Módulos Clases y ObjetosSemana 6   Módulos Clases y Objetos
Semana 6 Módulos Clases y Objetos
 
1 -programacion_oo
1  -programacion_oo1  -programacion_oo
1 -programacion_oo
 
Javascript
JavascriptJavascript
Javascript
 
Tema 4 clases_y_objetos
Tema 4 clases_y_objetosTema 4 clases_y_objetos
Tema 4 clases_y_objetos
 
La palabra reservada this y los métodos "getters" y "setters"
La palabra reservada this y los métodos "getters" y "setters"La palabra reservada this y los métodos "getters" y "setters"
La palabra reservada this y los métodos "getters" y "setters"
 
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
 
manual de C#
manual de C#manual de C#
manual de C#
 
Manual c# 2
Manual c# 2Manual c# 2
Manual c# 2
 
Manual de c#
Manual de c#Manual de c#
Manual de c#
 
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptxResumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
 
Semana9b Vbr
Semana9b VbrSemana9b Vbr
Semana9b Vbr
 
PresentacióN1
PresentacióN1PresentacióN1
PresentacióN1
 
Conceptos basicos POO
Conceptos basicos POOConceptos basicos POO
Conceptos basicos POO
 

Más de Ramiro Estigarribia Canese

8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdf8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdfRamiro Estigarribia Canese
 

Más de Ramiro Estigarribia Canese (20)

8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdf8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdf
 
Principios que Guían la Práctica
Principios que Guían la PrácticaPrincipios que Guían la Práctica
Principios que Guían la Práctica
 
CSS - Hojas de Estilo en Cascada.pdf
CSS -  Hojas de Estilo en Cascada.pdfCSS -  Hojas de Estilo en Cascada.pdf
CSS - Hojas de Estilo en Cascada.pdf
 
Python conceptos básicos
Python   conceptos básicosPython   conceptos básicos
Python conceptos básicos
 
Diseño de WebApps
Diseño de WebAppsDiseño de WebApps
Diseño de WebApps
 
Diseño basado en patrones
Diseño basado en patronesDiseño basado en patrones
Diseño basado en patrones
 
Servicios web
Servicios webServicios web
Servicios web
 
Especificaciones de los procesadores
Especificaciones de los procesadoresEspecificaciones de los procesadores
Especificaciones de los procesadores
 
Lenguaje de programación awk
Lenguaje de programación awkLenguaje de programación awk
Lenguaje de programación awk
 
Bases de datos con PHP y PDO
Bases de datos con PHP y PDOBases de datos con PHP y PDO
Bases de datos con PHP y PDO
 
Bases de datos con PHP y Mysqli
Bases de datos con PHP y MysqliBases de datos con PHP y Mysqli
Bases de datos con PHP y Mysqli
 
Interfaz de usuario
Interfaz de usuarioInterfaz de usuario
Interfaz de usuario
 
Variables del sistema en php
Variables del sistema en phpVariables del sistema en php
Variables del sistema en php
 
Funciones en php
Funciones en phpFunciones en php
Funciones en php
 
Bootstrap menues, contenedores y formularios
Bootstrap   menues, contenedores y formulariosBootstrap   menues, contenedores y formularios
Bootstrap menues, contenedores y formularios
 
Estructuras de control en bash
Estructuras de control en bashEstructuras de control en bash
Estructuras de control en bash
 
Visual studio code
Visual studio codeVisual studio code
Visual studio code
 
Diseño de software
Diseño de softwareDiseño de software
Diseño de software
 
Herramienta cacti
Herramienta cactiHerramienta cacti
Herramienta cacti
 
Monitoreo de datacenter
Monitoreo de datacenterMonitoreo de datacenter
Monitoreo de datacenter
 

Último

EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 

Último (12)

EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 

8.clases y objetos en c++

  • 1. 8.Clases y objetos en C++ Un análisis más detallado Ramiro Estigarribia Canese
  • 2. ¿Qué es una Clase? ➔ La programación orientada a objetos se basa en las clases. ➔ Una clase es un molde del que luego se pueden crear múltiples objetos, con similares características. ➔ Una clase es una plantilla (molde), que define atributos (variables) y métodos (funciones). ➔ La clase define los atributos y métodos comunes a los objetos de ese tipo, pero luego, cada objeto tendrá sus propios valores.
  • 3. Estructura de una Clase Debemos crear una clase antes de poder crear objetos (instancias) de esa clase. Al crear un objeto de una clase, se dice que se crea una instancia de la clase o un objeto. La estructura de una clase es: class [nombre de la clase] { [atributos o variables de la clase] [métodos o funciones de la clase] }
  • 4. 1.Clase Persona. #include <iostream> using namespace std; class Persona { public: char Nombre[30]; int Edad; void inicializar() { cout <<"Ingrese Nombre y Edad"<<endl; cin >> Nombre >> Edad; } void imprimir() { cout << "Nombre:" << Nombre << endl ; cout << "Edad:" << Edad << endl; } void EsMayor() { if (Edad>=18) cout <<"Es Mayor de Edad"; else cout <<"Es Menor de Edad"; }}; int main() { Persona UnaPersona; UnaPersona.inicializar(); UnaPersona.imprimir(); UnaPersona.EsMayor(); return 0; } Bajar Código Aquí
  • 5. Clase Triángulo Equilátero. //2.Lados de un triángulo. //Identifica el lado Mayor. //Identifica si es Equilátero. #include <iostream> using namespace std; class Triangulo { public: int lado1,lado2,lado3; void inicializar() { cout << "Medida lado 1:"; cin >> lado1; cout << "Medida lado 2:"; cin >> lado2; cout << "Medida lado 3:"; cin >> lado3; } void ladoMayor() { cout << "Lado mayor:"; if (lado1>lado2 && lado1>lado3) cout << lado1; else if (lado2>lado3) cout << lado2; else cout << lado3; } void esEquilatero() { if (lado1==lado2 && lado1==lado3) cout << "nEs equilátero"; else cout << "nNo es equilátero"; }}; int main() { Triangulo triangulo1; triangulo1.inicializar(); triangulo1.ladoMayor(); triangulo1.esEquilatero(); return 0; } 2.Clase Triángulo. Bajar Código: https://paste.ee/p/lLDEa
  • 6. ¿Qué es un Constructor? Es un un método que se ejecuta al inicio de forma automática, y que sirve para inicializar un objeto. Características: 1. Tiene el mismo nombre de la clase. 2. No puede retornar datos. 3. Se ejecuta una única vez. Ejemplo: public MismoNombreQueLaClase (tipo parámetro1, ...tipo parámetro n) { campo1 = valor o parámetro; . campo n = valor o parámetro; }
  • 7. Colaboración de clases Normalmente un problema resuelto con la metodología de programación orientada a objetos no interviene una sola clase, sino que hay muchas clases que interactúan y se comunican. Plantearemos un problema separando las actividades en dos clases. Ejemplo: ➔ Un banco tiene 3 clientes que pueden hacer depósitos y extracciones. ➔ El banco requiere al final saber el total de dinero.
  • 8. 3. Clase Cliente y Banco. Atributos y Métodos. Cliente atributos nombre monto métodos depositar extraer Banco atributos 1 Cliente métodos operar Pasos para ejecutar el ejemplo: 1. Crear un Proyecto: Banco, copiar el primer código. 2. Hacer click en NewFile, elegir Java, y nombre:Cliente: Aquí copiar el 2do. código.
  • 9. #include <iostream> using namespace std; class Cliente { public: int monto; char nombre[30]; void depositar(int m) { monto=monto+m; } void extraer(int m) { monto=monto-m; } void imprimir(void) { cout << nombre << " tiene depositado " << monto; } }; class Banco { public: Cliente cliente1; Banco() { cout << "Ingrese el Nombre y el Monto Inicial: "; cin >> cliente1.nombre; cin >> cliente1.monto; } void operar() { cliente1.depositar (70); cliente1.extraer (30); cliente1.imprimir(); } }; int main() { Banco banco1; banco1.operar(); return 0; } https://paste.ee/p/EidfR
  • 10. ¿Qué es un Puntero? ➔ Un puntero es una variable que da referencia a una región de memoria; en otras palabras es una variable cuyo valor es una dirección de memoria. ➔ Si se tiene una variable A de tipo puntero que contiene una dirección de memoria en la que se encuentra almacenado un valor B se dice que A apunta a B. ➔ El programador utilizará punteros para guardar datos en memoria en muchas ocasiones.
  • 11. Operadores de Punteros ➔ El operador dirección ( & ) obtiene la dirección de memoria de su operando. Por ejemplo, teniendo en cuenta las declaraciones: ➔ int x = 5; // declara la variable ➔ int *Puntero; // declara la variable apuntador. Entonces, se dice que Puntero apunta a x.
  • 12. 4.Ejemplo: Puntero y valor. #include <iostream> using namespace std; int main() { int valor; // valor es un entero int *puntero; // puntero valor = 7; // se asigna 7 a la variable puntero = &valor; // se asigna la dirección al Puntero. cout << "La direccion de valor es " << &valor << endl; cout << "El valor del puntero es " << puntero << endl; cout << "El valor de valor es " << valor << endl; cout << "El valor de *Puntero es " << *puntero << endl; return 0; // indica que terminó correctamente } // fin de main
  • 13. 5.Número al Cubo. #include <iostream> using namespace std; int cubo(int); // prototipo int main() { int numero = 5; cout << "El valor es " << numero; numero = cubo(numero); // pasa el numero a cubo cout << "nEl nuevo valor es " << numero << endl; return 0; // indica que terminó correctamente } // fin de main int cubo(int n) // calcula y devuelve el cubo { return n*n*n; // eleva al cubo } // fin de la función cubo