Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Tipo de Dato Void | Otros Tipos de Datos y Conceptos
/
Tipos de Datos en C++

bookTipo de Dato Void

Desliza para mostrar el menú

Siempre se debe especificar el tipo porque es un lenguaje de tipado estático. El compilador necesita conocer el tipo exacto de cada variable para asignar la cantidad correcta de memoria y garantizar la seguridad de tipos. También necesita conocer los tipos de los valores de retorno y los parámetros de las funciones.

Note
Nota

Un lenguaje de tipado estático es aquel donde el tipo de dato de una variable se declara explícitamente y es verificado por el compilador.

main.cpp

main.cpp

copy
12345678910
#include <iostream> // Let's consider a simple example. // Imagine you need to create a function that logs something in console. // What type should it return? ___ log(std::string message) { std::cout << message; return ___; }

En este caso, no se requiere un tipo de retorno específico; podría ser int, double, float o bool. Para este escenario, el tipo exacto no es relevante. De hecho, ¿qué sucede si no necesitamos retornar nada en absoluto?

Void como tipo de retorno de función

A menudo existen funciones que no necesitan retornar ningún valor, como:

main.cpp

main.cpp

copy
12345678
// Outputting information in console ___ log(std::string message) { std::cout << message; } // Updating values of variables ___ update(int& variable, int new_value) { variable = new_value; } // Calling another function ___ closeFile(std::fstream& file) { file.close(); }

En este caso se puede utilizar el tipo de dato void. El tipo de dato void en programación indica la ausencia de cualquier valor o tipo. Puede emplearse de diversas maneras, pero en el caso de las funciones, generalmente se utiliza para señalar que una función no retorna ningún valor.

main.cpp

main.cpp

copy
123456789101112
#include <iostream> void log(std::string message) { std::cout << message; return; } int main() { log("This is a void function!"); }

Nota

Se utilizó la palabra clave return pero no se pasó ningún valor. La palabra clave return también puede omitirse en funciones de tipo void. Intente eliminarla en el ejemplo.

Void como Puntero

Los punteros void (void*) son punteros que no tienen un tipo de dato específico asociado. Pueden apuntar a cualquier tipo de objeto, pero es necesario convertirlos al tipo adecuado antes de utilizarlos. Son muy útiles, aunque a veces difíciles de comprender.

main.cpp

main.cpp

copy
1234567891011121314
#include <iostream> int main() { int num = 10; // Here we are creating a void pointer // Now it can point to any variable of any data type // You can try changing the type of `num` from `int` to `float` void* ptr = &num; // To use this pointer, we need to cast it to the appropriate type // VVV int* intPtr = static_cast<int*>(ptr); std::cout << *intPtr << std::endl; // Output: 10 }

En este ejemplo, ptr es un puntero void que apunta a un entero (num). Luego, convertimos ptr a un puntero de tipo int* para acceder y mostrar el valor de num.

question mark

¿Qué significa usar void como tipo de retorno de función en C++?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 3

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 4. Capítulo 3
some-alt