Entendiendo C++: Sintaxis Básica y Fundamentos de la Programación Orientada a Objetos
Cuando consideramos un programa en C++, puede definirse como una colección de objetos que se comunican invocando los métodos de los demás. Veamos brevemente qué significan una clase, un objeto, métodos y variables de instancia.
Objeto: Los objetos tienen estados y comportamientos. Ejemplo: Un perro tiene estados (color, nombre, raza) y comportamientos (mover la cola, ladrar, comer). Un objeto es una instancia de una clase.
Clase: Una clase puede definirse como una plantilla o modelo que describe los comportamientos/estados que soportan los objetos de su tipo.
Métodos: Un método es básicamente un comportamiento. Una clase puede contener muchos métodos. Es en los métodos donde se escribe la lógica, se manipulan los datos y se ejecutan todas las acciones.
Variables de Instancia: Cada objeto tiene su conjunto único de variables de instancia. El estado de un objeto se crea mediante los valores asignados a estas variables de instancia.
Estructura de un Programa en C++
Veamos un código simple que imprimiría las palabras Hola Mundo.
#include <iostream>
using namespace std;
// main() es donde comienza la ejecución del programa.
int main() {
cout << "Hola Mundo"; // imprime Hola Mundo
return 0;
}
Analicemos las diversas partes del programa anterior:
El lenguaje C++ define varios encabezados, que contienen información necesaria o útil para tu programa. Para este programa, se necesita el encabezado <iostream>.
La línea using namespace std; le dice al compilador que use el espacio de nombres std. Los espacios de nombres son una adición relativamente reciente a C++.
La siguiente línea '// main() es donde comienza la ejecución del programa.' es un comentario de una sola línea disponible en C++. Los comentarios de una línea comienzan con // y terminan al final de la línea.
La línea int main() es la función principal donde comienza la ejecución del programa.
La siguiente línea cout << "Hola Mundo"; hace que el mensaje "Hola Mundo" se muestre en la pantalla.
La siguiente línea return 0; termina la función main() y hace que devuelva el valor 0 al proceso que la llamó.
Compilar y Ejecutar un Programa en C++
Veamos cómo guardar el archivo, compilar y ejecutar el programa. Sigue los pasos a continuación:
Abre un editor de texto y agrega el código como se muestra arriba.
Guarda el archivo como:
hola.cppAbre una terminal y ve al directorio donde guardaste el archivo.
Escribe
g++ hola.cppy presiona Enter para compilar tu código. Si no hay errores, el terminal generará un archivo ejecutablea.out.Ahora, escribe
./a.outpara ejecutar tu programa.Podrás ver
Hola Mundoimpreso en la ventana.
$ g++ hola.cpp
$ ./a.out
Hola Mundo
Asegúrate de que g++ esté en tu PATH y que lo estés ejecutando en el directorio que contiene el archivo hola.cpp.
Puedes compilar programas C/C++ usando makefile. Para más detalles, puedes consultar nuestro 'Tutorial de Makefile'.
Puntos y Coma y Bloques en C++
En C++, el punto y coma es un terminador de declaración. Es decir, cada declaración individual debe terminar con un punto y coma. Indica el final de una entidad lógica.
Por ejemplo, las siguientes son tres declaraciones diferentes:
x = y;
y = y + 1;
add(x, y);
Un bloque es un conjunto de declaraciones lógicamente conectadas que están rodeadas por llaves de apertura y cierre. Por ejemplo:
{
cout << "Hola Mundo"; // imprime Hola Mundo
return 0;
}
C++ no reconoce el final de la línea como terminador. Por esta razón, no importa dónde pongas una declaración en una línea. Por ejemplo:
x = y; y = y + 1; add(x, y);
es lo mismo que
x = y;
y = y + 1;
add(x, y);
Identificadores en C++
Un identificador en C++ es un nombre usado para identificar una variable, función, clase, módulo o cualquier otro elemento definido por el usuario. Un identificador comienza con una letra de A a Z o a z, o un guion bajo (_) seguido de cero o más letras, guiones bajos y dígitos (0 a 9).
C++ no permite caracteres de puntuación como @, $ y % dentro de los identificadores. C++ es un lenguaje de programación sensible a mayúsculas/minúsculas. Por lo tanto, Manpower y manpower son dos identificadores diferentes en C++.
Aquí hay algunos ejemplos de identificadores aceptables:
mohd zara abc move_name a_123
myname50 _temp j a23b9 retVal
Palabras Clave en C++
La siguiente lista muestra las palabras reservadas en C++. Estas palabras reservadas no pueden usarse como nombres de constantes, variables o cualquier otro identificador.
| asm | else | new | this |
| auto | enum | operator | throw |
| bool | explicit | private | true |
| break | export | protected | try |
| case | extern | public | typedef |
| catch | false | register | typeid |
| char | float | reinterpret_cast | typename |
| class | for | return | union |
| const | friend | short | unsigned |
| const_cast | goto | signed | using |
| continue | if | sizeof | virtual |
| default | inline | static | void |
| delete | int | static_cast | volatile |
| do | long | struct | wchar_t |
| double | mutable | switch | while |
| dynamic_cast | namespace | template |
Trigrafos
Algunos caracteres tienen una representación alternativa, llamada secuencia de trigrafo. Un trigrafo es una secuencia de tres caracteres que representa un solo carácter y la secuencia siempre comienza con dos signos de interrogación.
Los trigrafos se expanden en cualquier lugar donde aparezcan, incluyendo dentro de literales de cadena y caracteres, en comentarios y en directivas del preprocesador.
Los siguientes son los trigrafos más utilizados:
| Trigrafo | Reemplazo |
|---|---|
| ??= | # |
| ??/ | \ |
| ??' | ^ |
| ??( | [ |
| ??) | ] |
| ??! | | |
| ??< | { |
| ??> | } |
| ??- | ~ |
No todos los compiladores soportan trigrafos y no se recomienda su uso debido a su naturaleza confusa.
Espacios en Blanco en C++
Una línea que contiene solo espacios en blanco, posiblemente con un comentario, se conoce como línea en blanco, y el compilador de C++ la ignora totalmente.
El espacio en blanco es el término usado en C++ para describir espacios, tabulaciones, caracteres de nueva línea y comentarios. El espacio en blanco separa una parte de una declaración de otra y permite al compilador identificar dónde termina un elemento en una declaración, como int, y comienza el siguiente.
Declaración 1
int edad;
En la declaración anterior debe haber al menos un carácter de espacio en blanco (generalmente un espacio) entre int y edad para que el compilador pueda distinguirlos.
Declaración 2
fruta = manzanas + naranjas; // Obtener el total de fruta
En la declaración 2 anterior, no son necesarios caracteres de espacio en blanco entre fruta y =, o entre = y manzanas, aunque puedes incluirlos si lo deseas para mejorar la legibilidad.
Lenguaje C
- Dominando la Entrada y Salida en C++: Guía Práctica
- Dominando los Operadores en C++: Guía Completa con Ejemplos Prácticos
- Comentarios en C++: Mejores Prácticas para Código Legible y Mantenible
- Dominando flujos en C++: cout, cin, cerr, clog – Guía práctica
- Dominando la sintaxis básica de C: Tokens, estructura y punto y coma
- Lenguaje de Programación C++: Visión General y Características Clave
- Dominando los Comentarios en C++: Mejores Prácticas y Sintaxis
- Constantes y Literales en C++: Tipos, Sintaxis y Mejores Prácticas
- Guía Completa de Operadores en C++: Tipos, Uso y Mejores Prácticas
- Dominando los Tipos Numéricos en C++: Guía Práctica
- Fundamentos de Java: Dominando la Sintaxis Básica