Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: pmhracing en 24 Febrero 2013, 05:51 am



Título: Consulta C++
Publicado por: pmhracing en 24 Febrero 2013, 05:51 am
hola.
soy sumamente nuevo programando en C++ y tengo un programilla para simular una tirada de dados...
pero en esta parte del codigo
   for(int i=0;i<cant;i++){   
      string n="";
      cout<<i+1<<": ";
      cin>>n;
      j[ i ].setNombre(n);
      cout<<endl;
   }
luego de q se ingresa la primera vez se digita el nombre y se presiona enter me aparece una ventana de error y me dice "Unhandled exception bla bla bla"... >:(
no se que estere haciendo mal, se supone q j es un vector de tipo clase "Jugador", no se si sera que no se esta cargando el string al objeto dentro de j[ i ]... Que hago mal...??
Que me aconsejan??


Título: Re: Consulta C++
Publicado por: Eternal Idol en 24 Febrero 2013, 16:21 pm
No es suficiente codigo como para saber cual es el problema. Depuralo por tu cuenta o deja una expresion minima (compilable) del problema para que lo hagamos por vos.

Ahora la parte de la bola de cristal: ¿Como es la declaracion de j? ¿Estas usando resize? ¿Estas llamando algun metodo de vector?


Título: Re: Consulta C++
Publicado por: 85 en 24 Febrero 2013, 19:34 pm

la expresión mínima compilable XD, si algo no está funcionando revisá los métodos de la clase, no los podemos adivinar

Código:

#include <iostream>
#include <string>
using namespace std;
class Jugador {

private:
string str;
public:
void setNombre(string n){ str=n; }
string getNombre() {return str;}
};

void YumYum()
{
const int cant = 2;
Jugador j[cant];
for(int i=0;i<cant;i++){   
string n="";
cout<<i+1<<": ";
cin >> n;
j[i].setNombre(n);
cout<<endl;
}

// cout<<j[0].getNombre()<<endl;
}

int main(){
YumYum();
printf("\n");
system("pause");
return 0;
}