Dev - C++ - Inicializacion de constructores y creacion de objetos

   
Vista:

Inicializacion de constructores y creacion de objetos

Publicado por Manu (2 intervenciones) el 09/08/2017 00:49:17
Muy buenas noches amigos, tengo un problema con la inicializacion de los constructores y no logro saber donde esta el problema. Si inicializo el construtor de esta forma usuario::usuario() { strcopy(nombre," "); edad = 0; }
no hay ningun problema pero en el momento que quiero darle parametros usuario::usuario(char n,int e), ya no me funciona o en el mismo constructor o no puedo crear un objeto del tipo usuario persona; porque me da error. Muchas gracias de antemano.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <iostream>
#include <stdlib.h>
#include <conio.h>
#include <cstdio>
#include <string.h>
 
using namespace std;
 
class persona
{
    private:
        char nombre[40];
        int edad;
    public:
        persona(char,int);
        void mostrar();
        void pedir();
};
 
 
 
persona::persona(char n,int e)
{
    strcpy(nombre,n);
    edad = e;
 
}
 
void persona::mostrar()
{
    cout<< "\n Nombre : "<<nombre<<endl;
    cout<< " Edad : "<<edad<<endl;
 
}
 
void persona::pedir()
{
    cout<< " Nombre : ";
    cin>>nombre;
    cout<< " Edad : ";
    cin>>edad;
 
}
 
int main()
{
 
    persona x;
    x.pedir();
    x.mostrar();
 
 
 
    getch();
    return 0;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Inicializacion de constructores y creacion de objetos

Publicado por Thanatos (131 intervenciones) el 09/08/2017 06:16:05
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <iostream>
#include <string>
 
using namespace std;
 
class Persona
{
    public:
        Persona();
        Persona(const string &, const unsigned);
 
        void pedir();
        void mostrar() const;
    private:
        string nombre_;
        unsigned edad_;
};
 
Persona::Persona()
    : Persona("Desconocido", 0)
{ }
 
Persona::Persona(const string &nombre, const unsigned edad)
    : nombre_(nombre), edad_(edad)
{ }
 
void Persona::pedir()
{
    cout << "Nombre: ";
    (void) getline(cin, nombre_);
 
    cout << "Edad: ";
    cin >> edad_;
}
 
void Persona::mostrar() const
{
    cout << "Nombre --> " << nombre_ << '\n'
         << "Edad ----> " << edad_   << '\n';
}
 
int main()
{
    Persona persona1("Carlos", 15);
    persona1.mostrar();
 
    cout << '\n';
 
    Persona persona2;
    persona2.pedir();
    persona2.mostrar();
 
    (void) cin.ignore();
    (void) cin.get();
    return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar