Ver Mensaje Individual
  #3 (permalink)  
Antiguo 13/08/2006, 02:17
Nivel7
 
Fecha de Ingreso: abril-2006
Ubicación: Acapulco Gro. México
Mensajes: 483
Antigüedad: 18 años, 9 meses
Puntos: 2
La explicacion de Developer9 es exelente(la primera que me agrada de el, jeje).

yo quiero agregar una explicacion sin tantos conseptos.

mira, la mayoria de los lenguajes tienen tipos de datos predeterminados, por ejemplo en C, tenemos char, int, long, ect.

estos tipos ya estan definidos por el propio lenguaje, lo unico que tienens que hacer es crear variables del tipo que mas se adecue a tus datos a manejar.

una caracteristica de estos tipos es que generalmente solo tienen una unica propiedad, su valor.

por ejemplo;
int a = 10;

la propiedad del tipo int es el valor contenido.

y tienen operadores sobrecargados, como son, =,==,+,-,*,/, etc.

la mayoria de los tipos basicos o nativos usan estos, operadores.

cuando quieres que tu variable tenga mas de una propiedad,
tienes que crear un tipo compuesto, puede ser un array o una estructura.

este tipo lo defines, con el numero y tipo de propiedades determinado, y despues ya puedes declarar y crear variables de este tipo.

en C++ tambien puedes sobrecargar los operadores para tu tipo.

en si esto es lo basico, solo que en POO(programacion orientada a objetos)
se crean tipos que ademas de propiedades, tienen comportamiento(funciones mienbro).

entonces declaras tu clase(en realidad es muy similar a la estructura) sus respectivas propiedades, y agregas determinado comportamiento.
por ejemplo si tu clase es :

class Perro
{
//las propiedades serian:
private:
char raza[20];
char nombre[20];
int edad;
Color color;
//etc.
//su comportamiento seria.
public:
void ladrar(int veces);
void comer(int gramos);
void correr(int velo);
//etc.
como en C++ no hay una sintaxis para propiedades publicas, se usan metodos Get,Set.
char* GetRaza();
char* GetNombre();
//etc.
};

una vez que terminas de definir e implementar tu clase. ya tienes un tipo mas para usar.

y creas tu variable u objeto en este caso ya que la variable es de un tipo clase.

Perro buffy;
buffy.ladrar(3);
buffy.correr(20);
//etc.

bueno, todo esto para responder que no, una clase y un objeto no es lo mismo.

una clase es la definicion de un tipo de dato abstracto.

y un objeto es una variable de tipo clase.

Saludos.