Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Sintaxis Básica de las Plantillas en C++ | Creando la Primera Plantilla
Templates en C++

Sintaxis Básica de las Plantillas en C++

Desliza para mostrar el menú

Crear una plantilla es en realidad bastante sencillo, y es una de las partes más fáciles de utilizarlas. Para comenzar, necesitas crear una función o una clase. Empezaremos con la función.

main.cpp

main.cpp

123456
void MyFirstTemplate() { } int main() { MyFirstTemplate(); }

Como puedes ver, hay una función muy simple que por ahora no hace nada. Podemos llamarla fácilmente dentro de la función main. Tu tarea ahora es convertirla en una plantilla.

template.h

template.h

123456789101112
// To create a template, you need to add code above the function or class // Start with the keyword `template` to indicate you're defining a template // template // Add angle brackets `<>`, this is list of the parameters for template // template < > // Inside of it has to be keyword `typename` and the name of it // template <typename Name> template <typename Name> void MyFirstTemplate() { }

Ahora, hagamos que realice una acción, como imprimir un mensaje. Llámala dentro de la función principal para verla en funcionamiento.

main.cpp

main.cpp

123456789101112
#include <iostream> template<typename Name> void MyFirstTemplate() { std::cout << "c<>definity" << std::endl; } int main() { MyFirstTemplate(); }

Como puedes ver, ocurre un error cuando intentas llamarla como si fuera una función regular. Esto sucede porque ya no es simplemente una función sencilla. En este punto, el parámetro de plantilla especificado dentro de los corchetes angulares después de la palabra clave template se vuelve esencial.

main.cpp

main.cpp

12345678910111213
#include <iostream> // This essentioally creates an alias for a type you will use template<typename Name> // In this case the name of the type is Name void MyFirstTemplate() { std::cout << "c<>definity" << std::endl; } int main() { // In order to call the template function properly // You need to specify any type inside the brackets MyFirstTemplate<void>(); // This tells the template to use void as the type for Name }
Note
Nota

No importa qué tipo especifiques para este ejemplo, por lo que puedes cambiar void por cualquier tipo que desees. Sin embargo, especificar el tipo es obligatorio.

Para la plantilla de función MyFirstTemplate, no es necesario especificar un nombre para el parámetro de tipo. Puedes eliminar Name, y todo seguirá funcionando porque el parámetro de tipo no se utiliza dentro de la función.

question mark

¿Cuál es la sintaxis correcta para declarar una función plantilla?

Selecciona la respuesta correcta

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 1. Capítulo 2

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Sección 1. Capítulo 2
some-alt