TUTORIAL: C + + las clases, parte 1

  • spork
  • Brewmaster
  • Silver Member
  • Avatar de Usuario
  • Registrado: Sep 22, 2003
  • Mensajes: 6128
  • Loc: Seattle, WA
  • Status: Offline

Nota Mayo 21st, 2008, 8:27 am

Introducción


Nota: Este tutorial asume que usted ya tiene un conocimiento muy básico de C o el lenguaje C + +. Usted debe saber cómo utilizar variables, constantes, funciones y mecanismos básicos, tales como bloques condicionales y bucles.

Nota: El código fuente completo de los ejemplos de este tutorial puede ser descargado al final del tutorial.

Las clases son en el corazón de casi todos los objetos lenguaje de programación orientado. Nos permiten a la estructura de nuestro código de manera que representan el verdadero dominio de la vida que se aplica a nuestro programa. Además, las clases nos permiten mejores programas de diseño mediante la división de datos y el comportamiento en unidades lógicas que interactúan entre sí a través de aparatos estricta de reglas predefinidas.

¿Qué es una clase?


En pocas palabras, una clase es un tipo de datos personalizados. Más específicamente, una clase es un tipo de datos personalizado que contiene en su interior sus propios datos (datos de los miembros) y funcionalidad (funciones de miembro, o los métodos).

Las clases se utilizan para las cosas que necesitan ser representados por los tipos de datos mucho más complejos que los tipos primitivos como enteros, caracteres y valores booleanos. Por ejemplo, podríamos querer escribir un programa para una biblioteca que realiza un seguimiento de lo que los libros están disponibles, qué libros se han desprotegido, y que actualmente cuenta con los libros.

Para ello, hemos podría representan cada libro como una cadena que representa el título. Pero esto tiene muchas limitaciones. Por ejemplo, cada libro es mucho más que sólo un título, los libros tienen muchos otros elementos de información asociados con ellos, como el autor, fecha de publicación, ISBN, número de páginas, y así sucesivamente.

Para representar más precisamente de un libro, casarse, como para crear nuestros propios Libro [i] el tipo de datos, que podría contener toda la información acerca de ese libro en una sola unidad. Una vez que tenemos [i] Reserva tipo de datos, podemos usar ese tipo en el resto de nuestro programa. ¿Puedes ver cómo esto podría hacer que nuestro programa menos complicado y más fácil de manejar?

Escribir su primer C + + Class


Permite bucear en derecho con una simple de C + + clase que se demuestran los fundamentos.

En C + +, la mayoría de las clases se utilizan dos archivos que contienen su código:

El cabecera archivo, por lo general termina con h. , Contendrá los declaración de la clase . La declaración de la clase le dice al compilador qué la clase es, qué tipo de datos que se llevará a cabo, y qué tipo de cosas que será capaz de hacer.

El cuerpo archivo, por lo general termina con . cpp , Contendrá los definiciones . Las definiciones de clase indicar al compilador cómo para hacer las cosas que es capaz de hacer.

Para el resto de este tutorial, vamos a estar buscando en una clase simple, Perro . Permite empezar por crear el archivo de cabecera de nuestra clase.

Abre un editor de texto y crear un nuevo archivo. Guardar este archivo como "Dog.h" . Escribe lo siguiente en su archivo Dog.h:

CPP Código: [ Select ]
class Dog {
 
};
  1. class Dog {
  2.  
  3. };


Felicidades! Youve sólo declaró su primera clase en C + +. Nota: la sintaxis para declarar una clase: se utiliza el clase la palabra clave, seguido por el nombre de la clase que deseamos crear, seguido de la apertura y cierre de llaves, y finalmente un punto y coma.

Si queremos utilizar esta clase en nuestro programa, simplemente declarar las variables de este tipo. Las instancias de las clases se llaman objetos . Por ejemplo, la siguiente línea crea un entero llamado "num" y un perro nuevo objeto denominado "Woofy":

CPP Código: [ Select ]
int num;    // declare an integer
Dog woofy;  // declare a Dog
  1. int num;    // declare an integer
  2. Dog woofy;  // declare a Dog


Ahora nuestra clase está vacía, es decir, que no contiene datos o de comportamiento. En este punto, nuestra clase es más bien inútil, sino que se va a cambiar eso.

Miembros de datos


Datos de miembros se refiere a los datos (variables) que figura dentro de su clase. Estas variables se dice que se miembros de la clase. Cualquier tipo de datos puede ser un miembro de una clase: enteros, caracteres, dobles, y así sucesivamente.

Hay tres niveles de acceso que se pueden asignar a los miembros de una clase: públicos, protegidos y privados.

público:
Los Miembros que se declaren público puede tener acceso a los métodos de la clase y por cualquier cosa fuera de la clase.

protegidas:
Miembros que sean declaradas protegidas pueden ser accedidos por los métodos de la clase y por los métodos que pertenecen a las subclases de la clase. (Subclases están fuera del alcance de este tutorial, así que no verá ningún miembro de datos protegida por ahora.)

privado:
Miembros que se declaran privada sólo se puede acceder por los métodos de la clase. Ellos son inaccesibles para cualquier otra parte del programa.

Permite saltar en derecho y añadir un miembro de datos a nuestra clase Perro. ¿Qué tipo de información acerca de un perro se puede añadir? Deja comienzo con un simple: su edad. Todos los perros tienen una edad, por lo que nuestra clase de perro debe incluir datos para representar esto. Permite añadir un número entero para celebrar la edad del perro, en años:

CPP Código: [ Select ]
class Dog {
 
public:
   int age;
 
};
  1. class Dog {
  2.  
  3. public:
  4.    int age;
  5.  
  6. };


En el código anterior, hemos añadido una variable entera, edad , Como un entero en nuestra clase de perro. Nota de la sintaxis para declarar miembros de datos: el alcance de la variable (en el caso, público), un punto y coma, seguido por la declaración de variables.

Ahora que nuestra clase de perro tiene un miembro de datos público, podemos acceder a esta variable a cabo a través de los objetos perro utilizando el punto (.) Operador.

CPP Código: [ Select ]
Dog woofy;   // declare a Dog called woofy
woofy.age = 5;  // set woofy's age to 5
  1. Dog woofy;   // declare a Dog called woofy
  2. woofy.age = 5;  // set woofy's age to 5


Las funciones miembro (métodos)


Usted debe estar familiarizado con las funciones, por lo que la definición de los métodos es bastante fácil. Un método es una función que pertenece a una clase, la mayor parte de la misma manera que un miembro de datos es una variable que pertenece a una clase. Si bien los datos miembro describe ¿Qué es una clase , Describir los métodos de lo que una clase particular puede hacer .

Al igual que con los datos de los miembros, los mismos tres niveles de acceso pueden ser asignados a los métodos de una clase: públicos, protegidos y privados.

público:
Los métodos que se declaran público puede ser invocado por cualquier otra parte de la clase y por cualquier cosa fuera de la clase.

protegidas:
Los métodos que se declaran protegidas pueden ser invocadas por cualquier otro método de la clase y por cualquier otro método de las subclases de la clase. (Una vez más, subclases están fuera del alcance de este tutorial, así que no se ve ningún métodos protegidos por ahora. )

privado:
Los métodos que se declaran privados sólo pueden ser invocados por otros métodos de la clase. Ellos son inaccesibles para cualquier otra parte del programa.

Muy bien, pensar en una acción que un perro normalmente se realizan. ¿Qué hay de ladrar? Los perros aman a ladrar, y nuestro perro no será diferente. Permite seguir adelante y añadir un método, corteza , A nuestra clase Perro:

CPP Código: [ Select ]
class Dog {
 
public:
   int age;
   void bark();
 
};
  1. class Dog {
  2.  
  3. public:
  4.    int age;
  5.    void bark();
  6.  
  7. };


Nota de la sintaxis para declarar métodos: es muy similar a declarar miembros de datos. La sintaxis debería ser familiares para usted, ya que son esencialmente que se declara una función, la única diferencia es que esta función es un miembro de nuestra clase. También tenga en cuenta que no necesitamos decir que público otra vez - a cualquier miembro o método de declaraciones en relación con el identificador de ámbito público será declarado como público hasta que se especifique lo contrario.

Ahora que el weve declarado nuestro método, tenemos que realmente definen de forma que hace algo útil. Aquí es donde nuestro . cpp archivo entra en juego.

Crear un nuevo archivo de texto y guardarlo como "Dog.cpp" . Asegúrese de guardarlo en el mismo directorio que el archivo Dog.h que weve estado trabajando. En Dog.cpp, escribir las siguientes líneas:

CPP Código: [ Select ]
#include "Dog.h"
#include <iostream>
 
void Dog::bark() {
 
   std::cout << "Woof!" << std::endl;
}
  1. #include "Dog.h"
  2. #include <iostream>
  3.  
  4. void Dog::bark() {
  5.  
  6.    std::cout << "Woof!" << std::endl;
  7. }


Vamos a través de este archivo línea por línea. En la línea 1, se incluye la cabecera Dog.h archivo de manera que podamos definir los métodos de nuestra clase Perro. Se incluye la cabecera iostream en la línea 2 para permitir la salida estándar.

Ahora la nota la sintaxis para definir nuestro método:

tipo de cambio nombre de clase:: nombre del método ()

Definición de un método de una clase es muy similar a la definición de una llanura función ordinaria de edad. La principal diferencia es que el prefijo del nombre del método con el nombre de la clase a la que pertenece.

Ahora podemos llamar a nuestra corteza () método como este:

CPP Código: [ Select ]
Dog woofy;   // declare a Dog called woofy
woofy.bark();  // tell woofy to bark
  1. Dog woofy;   // declare a Dog called woofy
  2. woofy.bark();  // tell woofy to bark


Conclusión


Ahora tiene una comprensión básica de cómo crear y utilizar clases en C + +. Hay cosas mucho más avanzado que podemos hacer con las clases, pero así salvar a aquellos para los tutoriales siguiente.

Yo siempre bienvenidos preguntas o comentarios acerca de este tutorial. Basta con enviar una respuesta o PM me im glad to help!
Attachments:
Dog.zip

(899 Bytes) 515 veces

Complete source code for the Dog example used in this tutorial.

The Beer Monocle. Classy.
  • Anonymous
  • Bot
  • No Avatar
  • Registrado: 25 Feb 2008
  • Mensajes: ?
  • Loc: Ozzuland
  • Status: Online

Nota Mayo 21st, 2008, 8:27 am

Publicar Información

  • Total de mensajes en este tema: 1 mensaje
  • Moderador: Tutorial Writers
  • Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 4 invitados
  • No puede abrir nuevos temas en este Foro
  • No puede responder a temas en este Foro
  • No puede editar sus mensajes en este Foro
  • No puede borrar sus mensajes en este Foro
  • No puede enviar adjuntos en este Foro
 
 

© 2011 Unmelted, LLC. Ozzu® es una marca registrada de Unmelted, LLC