Ver Mensaje Individual
  #3 (permalink)  
Antiguo 14/07/2010, 05:19
fightmx
 
Fecha de Ingreso: febrero-2003
Ubicación: D.F.
Mensajes: 163
Antigüedad: 21 años, 2 meses
Puntos: 22
Respuesta: ayuda error programacion: no obedece el codigo

El código como lo posteaste no compila, ya que:

Código:
int elfo::atacar_t2(){

    cout << "aaaarrrrggg..." << endl;
}
no está declarada en la clase elfo (tal vez la usaste de prueba pero habrá que comentarla/borrarla o declararla).

El primer punto que quiero tocar está en tus archivos de cabecera:

Código:
#include <iostream>
using namespace std;
#include <cstdlib>  // versión C++ OK pero no se necesita
#include <stdlib.h> // versión C sale sobrando
¿y el include de string?
Lo necesario es que tengas:
Código:
#include <iostream>
#include <string>
using namespace std;
Siguiente punto:
Código:
    int atacar();
    int defender();
    int abandonar();
    int muerto();
    int atacar_t();
    int defender_t();
    int muerto_t();
Lo correcto es que estos métodos retornen un entero. Ejemplo:
Código:
int elfo::defender(){
	cout << nombre << " se puso en posicion defensiva..." << endl;
	return 1;
}
Último punto y más importante:
Código:
if (dec = 1){...
}
En varios if's estás asignando y no comparando valores. Lo correcto:
Código:
if (dec == 1){...
}
Revisa el código y haz las correcciones necesarias para que funcione como esperas.

OJO: En el switch también has olvidado utilizar 'break'.

Saludos.