Prepárate muy bien porque estás a punto de conocer los trucos más geniales que muy pocos conocen para que puedas gestionar y por ende mejorar de gran manera la memoria ya sea de tu programas o videojuegos ampliándola o rediciéndola, por eso te damos la bienvenida a esta gran clase de este MEGA CURSO DE C++, así que no le demos tantas vueltas y arranquemos, pero de una vez:
En la clase pasada vimos información exclusiva que muy pocos conocen sobre las variables, vimos las consecuencias de declarar y almacenar datos pero de forma incorrecta, también revelamos el gran secreto de los modificadores, vimos que eran, para que se sirven, como se usan, pero el detalle es que tan solo vimos un solo modificador que era: unsigned, aun nos falta conocer los otros dos, que son: short y long, y precisamente esos son los que vamos a ver en un momento, por eso si no has visto esa clase es muy importante que vayas a verla, porque de lo contrario no vas a entender nada de esta
CLASE ANTERIOR: EL GRAN SECRETO DE SIGNED Y UNSIGNED
De hecho, nosotros habíamos resaltado que los modificadores solo funcionan con los datos de tipo entero, precisamente, porque tú nunca vas a ver un modificador con un tipo de dato distinto, nunca vas a ver por ejemplo un: unsigned double, o un unsigned float, ETC...
Nunca veras variables declaradas con estos tipos de datos
Pero el detalle con el modificador, unsigned, es que pueda que nos amplie el espacio de la variable el doble, permitiéndonos almacenar un numero todavía más extenso, pero el problema es que solo podemos trabajar con números positivos, si nosotros intentamos agregar números negativos, se nos va a presentar un gran error, tal cual como lo vimos en la clase pasada, entonces, ¿Qué pasaría si nosotros queremos ampliar el espacio de la variable pero seguir trabajando con números enteros, tanto positivos como negativos?, pues muy sencillo, y aquí viene el primer gran truco.
PRIMER TRUCO:
Te presentamos el modificador: long, el cual nos amplia el espacio de la variable hasta 19 dígitos, y lo bacano es que nos permite almacenar números tanto positivos como negativos
Número máximo que podemos agregar en una variable de tipo entero con el modificador: long
Pero, ahora otro punto muy importante que debemos tener en cuenta, y es precisamente de que, como la gran velocidad de C++ se debe a que no posee ningún recolector de basura, ni tampoco nada que nos gestione la memoria, entonces nos toca a nosotros administrarla, y esto es algo a tener muy presente
A diferencia de Java y C#, C++ no posee ningún recolector de basura
Porque, nosotros podemos estar programando en el lenguaje de programación más veloz de todos, (Como en este caso C++) pero si no sabemos administrar bien la memoria, nuestro programa o videojuego va a correr lento, por ejemplo, si es en el caso de un juego vamos a tener caídas de: fps y si es un software no va a tener el rendimiento esperado, entonces es para que tengas muy en cuenta eso, porque sí, nosotros con el modificador long podemos ampliar el espacio de la variable hasta el triple, pero, así mismo vamos a consumir más recursos, por ejemplo, en una variable de tipo entero normal tu puedes almacenar máximo hasta este número
Número máximo permitido en una variable normal de tipo entero
Pero, ¿Que pasa si no vamos a hacer uso completo de todo ese rango, sino que tan solo vamos a almacenar un numero de tan solo uno o dos cifras, en este caso, supongamos que vamos a almacenar tan solo un: 3 y ya?, pues estaremos perdiendo un gran espacio en memoria
Estaremos desperdiciando un total de 9 dígitos en memoria
entonces, lo recomendable en este caso es reducir el espacio de la variable, porque si no lo hacemos estaremos desperdiciando recursos valiosos, (Y ya sabes cuáles son las consecuencias de eso), entonces, ¿Como podemos reducir el espacio?, pues muy sencillo y aquí viene el otro gran truco.
SEGUNDO TRUCO:
Te presentamos el modificador: short, aparte de que con el también podemos almacenar números, tanto positivos como negativos, y no solamente eso, sino que reduce el espacio de la variable a tan solo 5 digitos, por lo que ya seria muchos los recursos que nos estaríamos ahorrando en caso de que no vayamos a hacer uso de completo ellos
Número máximo permitido en una variable de tipo entero con el modificador: short
ANÁLISIS RANGOS
Analiza detalladamente este cuadro:
NOMBRE DEL TIPO DE DATO | TAMAÑO BYTES | RANGO O INTERVALO DE VALORES PERMITIDOS |
---|---|---|
int | 4 | De -2.147.483.648 a 2.147.483.647 |
unsigned int | 4 | De 0 a 4.294.967.295 |
long long int | 8 | De -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 |
unsigned long long int | 8 | De 0 a 18.446.744.073.709.551.615 |
short int | 2 | De -32.768 a 32.767 |
unsigned short int | 2 | De 0 a 65.535 |
NOTA IMPORTANTE 1: El modificador long lo tenemos que escribir dos veces seguidas (De esta manera: long long, tal cual como lo vez en el cuadro), porque de lo contario, si lo escribimos una sola vez, no funciona.
NOTA IMPORTANTE 2: Como ya lo habíamos mencionado, los modificadores solo sirven con los datos de tipo entero, tú nunca vas a ver un: long long float, unsigned long long string o un short double, ni nada de esos datos.
Nunca veras variables declaradas con estos tipos de datos
En el cuadro nos damos cuenta que en una variable de tipo entero normal, podemos almacenar números desde una cantidad en negativo, hasta otra en positivo, (tal cual como lo vimos en la clase pasada), ahora, si miramos el rango máximo que podemos almacenar en una variable normal de tipo entero pero con el modificador long, como te decíamos, el rango se triplica, partiendo desde una amplia cantidad en negativo hasta otra en positivo, ahora, si miramos el intervalo con el modificador short, el rango se reduce a tan solo cinco cifras, y lo bacano es que de igual manera podemos almacenar números positivos y negativos, tambien partiendo desde una cantidad en negativo hasta otra en positivo.
¿PORQUE LOS MODIFICADORES SOLO SIRVEN CON DATOS DE TIPO ENTERO?
Sabemos que en este momento te estás preguntando, ¿Porque los modificadores de tipo solo sirven con datos de tipo entero?, ¿Porque no con los datos de tipo: float, double, string, bool..., ¿Porque no?
Nunca veras un modificador con estos tipos de datos
la respuesta es muy sencilla, porque, el dato de tipo entero es el más usado a nivel de programación, entonces tiene prioridades, por nada más.
TERCER TRUCO:
También podemos incluir el modificador unsigned si queremos o si se requiere, ósea podemos hacer combinaciones para obtener otros resultados, por ejemplo, si incluimos un unsigned con el modificador long, el rango se amplía todavía más, a un número que ni Javier supo cómo leerlo, por eso, si tú sabes cómo se lee, por favor cuéntenos en la sección de los comentarios; pero, el detalle en este caso, es que ya no podemos incluir números negativos, (tal cual como lo explicamos en la clase pasada), ahora, si incluimos un unsigned pero esta vez con el modificador short, lo mismo, el rango también se amplía pero tampoco no podemos incluir números negativos en variables que declaremos combinando el modificador unsigned
Si combinas un unsigned con cualquiera de los otros modificadores se amplía el rango, pero no podrás incluir números negativos
RECOMENDACIÓN:
La recomendación que te damos es que practiques y practiques haciendo tus propias pruebas, que repases esta clase la cantidad de veces que sea necesario, y que analices muy bien el cuadro que te acabamos de mostrar, que hagas todo eso hasta que te quede totalmente claro y ya domines muy bien todos estos grandes trucos.
CONCLUSIÓN:
Pero sabes que es lo más bacano de todo, ES QUE PUEDES ENCONTRAR ESTE GRAN CURSO DE C++ COMPLETO Y TOTALMENTE GRATIS, AQUÍ:
Sin duda, acabas de conocer los mejores trucos para que mejorar de gran manera la memoria de tus variables, para que tus programas o videojuegos vuelen, pero aquí viene otro detalle y es que si te fijas esos nombres están muy extensos, tu imagínate que por alguna razón te toca trabajar con números muy amplios y que a cada rato te toque escribir: unsigned long long int, solo para declarar una variable, pues eso un proyecto amplio se te puede tornar muy tedioso y estarías perdiendo mucho tiempo y esfuerzo, entonces, ¿Qué puedes hacer en este caso?, pues justamente eso es lo que vamos a hablar en la próxima clase, donde vas a ver cómo reducir esos nombres tan extensos a los que tu quieras con el: typedef, ósea, con el definidor de tipo:
Toca o da click en la imagen para acceder a la siguiente clase, donde conocerás detalladamente como reducir esos nombres tan extensos con el: typedef (Definidor de tipo)
NOTA: Sí quieres ayudarme y motivarme a seguir aportando contenido de alta calidad y que siga siendo completamente gratis, ¡No dudes en dejarnos tu donación!.
Muchas gracias también porque sabemos que has dado click en el botón que dice: SEGUIR de esta tu página web, y también porque compartes todos nuestros conocimientos y proyectos con los que más puedes, un abrazo gigante, mil bendiciones y nos vemos en la próxima clase.