Código:
ahi como puedo inicialisar x,y? class ejemplo { public: . . . private: int x; double y; };
| ||||
Respuesta: inicialisar variables en clases creeo que no me explique bien, mira por ejemplo supongamos que en el ejemplo que puse x es un contador, entonces si con una funcion llo le aumento x++; ba a estar incorrecto por que no inicialise x y tiene otro balor que no es 0 almenos que como dices ponga una funcion, inicializar(); que me ponga en 0 el contador |
| ||||
Respuesta: inicialisar variables en clases Buenas!, en el constructor, puede tener sin parametros, para poder tener el valor principal, y asi te estalvias poner la funcion inicializar, que solo sirviria una vez ... te pongo el ejemplo del constructor, y de la funcion incrementar:
Código:
Despues, solo necesitarias llamar a la funcion Incrementar tantas veces como fuera necesario, si quieres comprovar que incrementa, puede hacer una funcion, que lo que hace es solamente visualizar la variable x, ya que no se puede acceder a las variables privadas.// Declaracion de la clase Clase class Clase { private: int x; public: Clase(); void IncrementarX(void); }; //Definicion de la clase Clase Clase::Clase() { x = 0; // Empieza con el valor 0. } void Clase::IncrementarX(void) { x = x + 1; // Subes a uno la variable x } PD: Si aun no es esto, te lo digo en general. Cualquier variable privada, solo se puede acceder su valor ( inicializarlo, incrementarlo, multiplicarlo por 2, visualizarlo etc ... ) con metodos publicos de la clase o con el constructor ( con el constructor solo serviria una vez, ya que solo se llama automaticamente al objeto de la clase ). Saludos! Última edición por WaRc3L; 16/08/2008 a las 11:55 Razón: mas informacion jeje! |
| ||||
Respuesta: inicialisar variables en clases Hola grasias por tu respuesta si era eso, lo que habia hecho hasta ahorita era con una funcion que las inicializara pero es mejor empesar a usarlas sin tener que llamar a una funcion. y lo de que solo se puede hacer una vez pues eso es lo buscaba siempre solo se puede inicializar 1 vez |
| ||||
Respuesta: inicialisar variables en clases Bueno, si no sabes algo de los constructores ( seguramente ahora si ) te explico una poquita informacion: Los constructoros de cualquier clase, son metodos, con el mismo nombre de la clase, que se llaman automaticamente al declarar un objeto de dicha clase.
Código:
Quando haces, el codigo de arriba, en cualquier lugar ( normalmente en el main ) lo que hace directamente es llamar al constructor, que ahi normalmente se inicializan las variables. Pueden aver varios constructores, ( con el mismo nombre claro, porque obligatoriamente tienen el nombre de la clase ), ( igual que pueden aver funciones con el mismo nombre ) , lo unico que varian son los parametros. Si tu haces lo siguiente:Clase Objeto;
Código:
Se llamaria al constructor que tiene dos parametros ( en este caso de tipo int todos dos ), y nadie puede negar que puede hacer esto:Clase Objeto(2,1);
Código:
Objeto01, llama automaticamente al constructor sin parametros, en cambio Objeto02 llama al constructor de dos parametros.Clase Objeto01; Clase Objeto02(5,4); Saludos! Espero que te haya servido! |