Tecnología

Inicio

Definición de abstracción de datos en C ++

Los científicos informáticos creados C ++, un lenguaje de programación de sistemas, como una extensión de la lengua original C desarrollado en la década de 1970. Mientras que C ++ incluye toda la funcionalidad del ot C, se añade capacidades orientadas a objetos a su sintaxis y bibliotecas. Debido a esto, los programadores de C ++ pueden aprovechar los paradigmas orientados a objetos, incluyendo la extracción de datos. Con el fin de entender lo que es la abstracción de datos, el programador debe entender cómo funcionan las clases de C ++ y objetos, y la importancia de proteger los datos sensibles de la manipulación.

Tipos de datos

En C ++, como en muchos otros idiomas, los programadores se ocupan de las variables que contienen ciertos tipos de datos. Estos tipos de datos pueden variar de diversas formas de números decimales y no decimales, a personajes y frases. En C ++, el programador debe especificar qué tipo de datos llevará a cabo una variable. Por ejemplo, una variable "x" que contendrá un número entero debe ser declarado como una variable entera, usando la palabra clave "int". Sin embargo, debido a que C ++ funciona de una manera orientada a objetos, los programadores pueden crear sus propios tipos de datos. tipos de datos creada por el programador se denominan "objetos", y pueden representar cualquier cosa a partir de listas de formas a las conexiones de red.

clases

Con el fin de crear un objeto, un programador debe definir primero cómo funciona ese tipo de datos. Lo hace mediante la definición de una "clase". La clase le dice al ordenador qué tipo de datos contendrá el objeto. Por ejemplo, el siguiente código define un objeto "Círculo", que contendrá información sobre su radio (r):

Círculo de clase {
público:
int r = 0; // Número entero "r" representa el radio
};

Ahora, cada vez que un usuario desea utilizar un objeto para representar un círculo, se puede declarar un objeto del tipo de datos "Círculo", de esta manera:

Círculo c; // "Círculo" es el tipo de datos

Herencia

El programador también puede definir la clase Circle para calcular el radio, mediante la adición de una función miembro. Esta función miembro puede realizar alguna tarea sobre la base de datos dentro de un objeto, y devolver un resultado. El siguiente ejemplo extiende la clase Circle mediante la adición de una función "getArea ()" que devuelve una aproximación decimal de la zona del Círculo:

Círculo de clase {

int r = 0;

flotar getArea () {
volver r r 3.14;
}
};

Círculo c = new Circle ();
a = 1;
cout << c.getArea (); // Imprime "3,14" a la pantalla

Abstracción de datos

La clase Circle representa un tipo abstracto de datos (ADT), que a su vez representa un objeto real en el mundo real - como un círculo o una pelota. Sin embargo, el usuario no necesita saber cómo funciona esta clase con el fin de utilizarlo; sólo que se hace algo. La función "getArea ()" es un buen ejemplo de esto: un usuario de la clase se puede utilizar la función getArea () sin tener que aprender su funcionamiento, sólo lo que se requieren entradas y salidas de lo que esperan. Esta es la abstracción de datos, y es importante porque permite a los programadores utilizar objetos sin conocer su estructura interna, por lo que es más fácil para ellos para construir código más complicado de las clases ya existentes.