Está en la página 1de 14

POO

Programación Orientada a Objetos 


Felipe Sebastián García Pérez
2. Conceptos básicos de programación
Funciones

Una función es un bloque de código que realiza alguna acción.


De manera opcional, se pueden definir parámetros de entrada que int suma(int a, int b){
permite pasar argumentos a la llamada de la función y también return a + b;
puede retornar un valor de salida. }
Sobrecarga de funciones

void imprimirCadena(){
cout << “Cadena” << “\n”; Sobrecargar una función se refiere a declarar una
} función con el mismo nombre que alguna otra, con
void imprimirCadena(stirng cadena){ diferentes parámetros.
cout << cadena << “\n”;
}
int main(){
imprimirCadena();
imprimirCadena(“Cadena 2”);
cin.get();
return 0;
}
Parámetros opcionales

Una función también puede incluir “parámetros opcionales”,


estos son parámetros de entrada a los que se les asigna un valor int suma(int a, int b = 0){
por defecto y pueden ser ignorados en la llamada de la función. return a + b;
}
Punteros

Un puntero es una variable que guarda una dirección de memoria.


int contador = 3;
• Indirección: Para declarar un puntero debemos asignar el tipo int* p = &contador;
de variable al que apuntará y el símbolo *. También podemos
referenciar el valor del elemento apuntado. cout << “Valor: ” << *p << “\n”;
• Dirección: Podemos asignar el valor de un puntero cout << “Dirección: ” << p << “\n”;
(inicializarlo) a través del símbolo & (Generalmente
referenciado a otra variable).
Paso por referencia

Algunas veces, necesitaremos poder modificar el valor de una void intercambio(int &a, int &b){
variable dentro del proceso de una función, para esto, podemos int c = a;
declarar alguno o algunos de nuestros parámetros como a = b;
referencias, es decir, preparar la función para recibir la dirección b = c;
o referencia de la variable }
Excepciones

Los errores en un programa a menudo de dividen en dos categorías: los errores lógicos, es decir, errores
de programación como asignaciones erróneas o referencias mal direccionadas, y los errores en tiempo de
ejecución que están fuera del control del programador, como problemas con dependencias.

Cualquiera sea el tipo de error, hay manera de notificar este acontecimiento a la pila de compilación y
dirigir la aplicación a un funcionamiento continuo, a este proceso se le llama el maneja de excepciones.
Try & Catch
Para manejar excepciones en void MyFunc(int c) {
C++ podemos hacer uso de los if (c > numeric_limits< char> ::max())
bloques Try y Catch, cuyo throw invalid_argument("argument is too large.");
trabajo es preparar el código }
para que, si un posible error int main() {
ocurre, la aplicación pueda try {
reaccionar a la situación. MyFunc(256); //Arrojará una excepción
} catch (invalid_argument& e) {
cerr << e.what() << endl;
return -1;
}
}
Namespace
namespace saludo{
void imprimir(){
cout << “Hola” << “\n”; La palabra clave namespace nos permite crear un
} bloqueo (también llamado contexto o ‘scope’), todas
} las funciones que estén dentro de este bloque estarán
void imprimir(){ asociadas a este; se le debe asignar un nombre para
cout << “Adios” << “\n”; identificarlo.
}
int main(){ Ayuda a identificar a funciones de nombres, retornos y
imprimir(); parámetros similares
saludo::imprimir();
cin.get();
return 0;
}
Estructuras

Una estructura es un tipo de variable definida por el usuario. struct coord {


Puede contener o agrupar una combinación de diferentes tipos de float x;
datos en uno. float y;
float z;
En C++ es posible agregar funciones como miembros de una }
estructura, aunque su uso queda relegado por las clases.
Programación Orientada a Objetos

La programación orientada a objetos es una técnica de programación basada en la abstracción de


elementos virtuales o reales en forma de objetos.

Los objetos se encargan de definir la funcionalidad de nuestra aplicación, así como almacenar
información, diferente a la programación modular donde un flujo principal se divide en múltiples
archivos o módulos.
Clases

Una clase es un modelo o plano a partir del cual se crearán class animal {
objetos. public:
string name;
Para declarar una clase en C++ se utiliza la palabra clave class. string getName(){
return this->name;
Las clases están conformadas por miembros, divididos en dos }
grupos, los atributos y los métodos. }

Cada miembro, o agrupaciones de estos, debe declarar un nivel de


acceso.
Objetos

Un objeto es la instancia de una clase, una variable a través de la animal* perro = new animal();
cual podremos acceder a los atributos y métodos de esta instancia
en particular.

En C++, generalmente se declara e inicializan los objetos a través


de punteros y utilizando la directriz de memoria dinámica new.

También podría gustarte