/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

metodos getter y metodos setter

 
      Índice del Foro elrincondelc.com -> C/C++ en General
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
lordLestatdeLioncourt



Registrado: 03 Jun 2014
Mensajes: 7

MensajePublicado: 03/06/2014 9:24 am
Título: metodos getter y metodos setter

Alguien me podria explicar como se crean los metodos getter y setter
he intentado de esta forma
Código:


char MiClase::getNombre(){
return this->nombre ;
}

void MiClase::setNombre(char nombre[50]){
this->nombre = nombre;
}


pero no me funciona obviamente me da error

me podrian explicar como se deben hacer por favor
Volver arriba
dehm



Registrado: 29 Abr 2011
Mensajes: 139

MensajePublicado: 03/06/2014 9:37 am
Título:

Deberías de poner la clase completa para ver dónde está el error
_________________
Aprendiendo
Volver arriba
lordLestatdeLioncourt



Registrado: 03 Jun 2014
Mensajes: 7

MensajePublicado: 03/06/2014 9:57 am
Título:

Código:

class Contactos
{
      private:
              char nombre[50];
              char telefono[50];
      public:
             Contactos();
             void setNombre(char nombre[50]);
             char getNombre();
};

Contactos::Contactos()
{
}

void Contactos::setNombre(char nombre[50])
{
     this->nombre = nombre;
}

char Contactos::getNombre()
{
     return this->nombre;
}


asi esta mi clase, disculpen mi ignorancia soy nuevo en c++
Volver arriba
dehm



Registrado: 29 Abr 2011
Mensajes: 139

MensajePublicado: 03/06/2014 10:11 am
Título:

El problema es que cuando quieres asignarle al miembro char nombre[50] con el setter, lo haces mal.
La forma correcta es copiar cada caracter del parámetro al miembro, o mejor, hacer uso de la función strcpy.
De ésta forma haces un copiado correcto del nombre que quieres copiar al miembro char nombre[50].

En el getter tienes un problema de tipos, ya que char nombre[50] es de tipo char[50] o char*, pero no char.

El código corregido podría ser así:
Código:
#include <iostream>
#include <string.h>

using namespace std;

class Contactos
{
      private:
              char nombre[50];
              char telefono[50];
      public:
             Contactos();
             void setNombre(char nombre[50]);
             char* getNombre();
};

Contactos::Contactos()
{
}

void Contactos::setNombre(char nombre[50])
{
    strcpy (this->nombre, nombre);
}

char* Contactos::getNombre()
{
     return nombre;
}

int main()
{

Contactos c;
char nombre[50]="El rincon del C";
c.setNombre(nombre);
cout<<c.getNombre();


return 0;

}

_________________
Aprendiendo
Volver arriba
lordLestatdeLioncourt



Registrado: 03 Jun 2014
Mensajes: 7

MensajePublicado: 03/06/2014 10:35 am
Título:

muchas gracias por responder, podrías recomendarme algún curso donde se traten estos temas si no es mucha molesta y gracias nuevamente
Volver arriba
dehm



Registrado: 29 Abr 2011
Mensajes: 139

MensajePublicado: 03/06/2014 10:52 am
Título:

Bueno, yo he aprendido C++ sobre todo con el curso de cconclase.
http://www.conclase.net/

Y también seguí en su momento el curso de C de ésta misma página.

Y luego algunos libros....pero bueno, para la iniciación esas páginas están bien, creo. Tienen un nivel básico-medio y una forma muy didáctica de decir las cosas.
_________________
Aprendiendo
Volver arriba
lordLestatdeLioncourt



Registrado: 03 Jun 2014
Mensajes: 7

MensajePublicado: 03/06/2014 10:59 am
Título:

muchas gracias por responder, saludos desde México
Volver arriba
dehm



Registrado: 29 Abr 2011
Mensajes: 139

MensajePublicado: 03/06/2014 11:10 am
Título:

De nada, para eso estamos.
Pues si eres de México, aquí encontrarás la ayuda de un paisano tuyo -rir3760-, que te podrá ayudar y aconsejar con los cursos y con todo lo relacionado con la programación con más solvencia que yo.
_________________
Aprendiendo
Volver arriba
lordLestatdeLioncourt



Registrado: 03 Jun 2014
Mensajes: 7

MensajePublicado: 04/06/2014 10:46 am
Título:

a muchas gracias, me pondré en contacto con él porque tengo algunas dudas con respecto a la librera ncurses.h, si también tú pudieras echarme una mano te lo agradecería mucho. Gracias nuevamente
Volver arriba
      Índice del Foro elrincondelc.com -> C/C++ en General
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com