Problema con POO
Publicado por iñaki (8 intervenciones) el 02/02/2019 18:00:52
Hola buenas no puedo compilar este programa ya que en las lineas de "void Persona::correr() {
cout << "Soy" << nombre << "y estoy corriendo" << edad << endl;
}"
y la linea "void Persona::leer() {
cout << "Soy " << nombre << " y estoy leyendo un libro" << edad << endl;
}"
el operador de inserción "<<" de justo antes del nombre me está dando problemas concretamente me dice que ningún operador << coincide con estos operandos. Si alguien sabe el porque y que me lo explicara le estaría muy agradecido más abajo os dejo el programa entero para que podáis echarle un vistazo, otra vez muchas gracias por vuestro tiempo.
P.D. Si quito los operadores de asignación y las dos variables que me están dando problemas el programa funciona sin ningún tipo de problema. Gracias
cout << "Soy" << nombre << "y estoy corriendo" << edad << endl;
}"
y la linea "void Persona::leer() {
cout << "Soy " << nombre << " y estoy leyendo un libro" << edad << endl;
}"
el operador de inserción "<<" de justo antes del nombre me está dando problemas concretamente me dice que ningún operador << coincide con estos operandos. Si alguien sabe el porque y que me lo explicara le estaría muy agradecido más abajo os dejo el programa entero para que podáis echarle un vistazo, otra vez muchas gracias por vuestro tiempo.
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
//Clases en C++
#include <iostream>
#include<stdlib.h>
using namespace std;
class Persona
{
public://Metodos
Persona(int, string);//Constructor
void leer();
void correr();
private://Atributos
int edad;
string nombre;
};
//Constructor Inicializar los atributos de la clase
Persona::Persona(int _edad, string _nombre)
{
edad = _edad;
nombre = _nombre;
}
void Persona::leer() {
cout << "Soy " << nombre << " y estoy leyendo un libro" << edad << endl;
}
void Persona::correr() {
cout << "Soy" << nombre << "y estoy corriendo" << edad << endl;
}
int main() {
Persona p1 = Persona(20, "Iñaki");
p1.leer();
Persona p1 = Persona(20, "Iñaki");
p1.correr();
system("PAUSE");
return 0;
}
P.D. Si quito los operadores de asignación y las dos variables que me están dando problemas el programa funciona sin ningún tipo de problema. Gracias
Valora esta pregunta
0