You are on page 1of 2

La vida est llena de complejidades, y una forma de lidiar con la complejidad es

enmarcar la simplificacin Abstracciones. Usted es una coleccin de ms de un


octilln de tomos. Algunos estudiantes de la mente Dira que su mente es una
coleccin de agentes semiautnomos. Pero es mucho ms simple pensar en ti
mismo como una sola entidad. En la informtica, la abstraccin es el paso crucial
de representar la informacin en trminos de su interfaz con el usuario. Es decir, se
resumen las caractersticas operativas esenciales de un problema y se expresa una
solucin en esos trminos.

Qu es un tipo?

Pensemos un poco ms en lo que constituye un tipo. Por ejemplo, qu es un nerd?


Si te suscribes al estereotipo popular, podras pensar en un nerd en trminos
visuales: gafas gruesas, con recuadro negro, protector de bolsillo lleno de
bolgrafos, etc. Despus de una pequea reflexin, podramos concluir que un nerd
est mejor definido operativamente, por ejemplo, en trminos de cmo responde a
una situacin social incmoda. Ustedes tienen una situacin similar, si no les
molesta las analogas estiradas, con un lenguaje procedural como C. Al principio,
tienden a pensar en un tipo de datos en trminos de su apariencia: cmo se
almacena en la memoria. Un char, por ejemplo, es 1 byte de memoria, y un doble
es a menudo 8 bytes de memoria. Pero un poco de reflexin nos lleva a concluir
que un tipo de datos tambin se define en trminos de las operaciones que se
pueden realizar en l. Por ejemplo, el tipo int puede utilizar todas las operaciones
aritmticas. Puede sumar, restar, multiplicar y dividir enteros. Tambin puede utilizar
el operador de mdulo (%) con ellos. Por otro lado, considere punteros. Un puntero
podra muy bien requerir la misma cantidad de memoria que un int. Incluso puede
ser representado internamente como un entero. Pero un puntero no permite las
mismas operaciones que un nmero entero. No puede, por ejemplo, multiplicar dos
punteros entre s. El concepto no tiene sentido, por lo que C ++ no lo implementa.
Por lo tanto, cuando declara una variable como un int o como un puntero a flotante,
no slo est asignando memoria, sino que tambin est estableciendo qu
operaciones se pueden realizar con la variable. En resumen, especificar un tipo
bsico hace tres cosas: Determina cunta memoria se necesita para un objeto de
datos. Determina cmo se interpretan los bits de la memoria. (Un largo y un flotador
pueden utilizar el mismo nmero de bits en la memoria, pero se traducen en valores
numricos de forma diferente.) Determina qu operaciones, o mtodos, se pueden
realizar utilizando el objeto de datos. Para los tipos incorporados, la informacin
acerca de las operaciones est incorporada en el compilador. Pero cuando define
un tipo definido por el usuario en C ++, debe proporcionar el mismo tipo de
informacin usted mismo. A cambio de este trabajo adicional, usted obtiene el poder
y la flexibilidad necesarios para adaptarse a los nuevos tipos de datos para que se
adapten a los requisitos del mundo real.

You might also like