|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Mar 2003
Città: Rimini
Messaggi: 1843
|
Unresolved External. Uso di enum in classe derivata.
L'errore è unresolved external riguardo ad un enum che utilizzo nel costruttore di una classe.
La classe derivata è questa e l'errore credo derivi dalla riga rossa (credo perchè l'unresolved external con doppio click non ti porta alla riga che lo genera): Codice:
#include <cstdlib>
#include "IM_Weapon.h"
class IM_WeaponPistol : IM_Weapon
{
public:
//contructor for Shotgun
IM_WeaponPistol()
{
SetWeaponType(EWeaponType::pistol);
SetMaxAmmunitions(35);
SetDamage(8);
SetProjectileExplode(false);
//1.2 secs to equip a shotgun
SetEquippingTime(1200);
}
};
Codice:
enum EAmmo{ low_ammo, normal_ammo, loads_ammo };
enum EWeaponType{ shotgun, rocket_launcher, pistol };
class IM_Weapon
{
private:
...roba....
public:
IM_Weapon(){}
~IM_Weapon(){}
...molta altra roba...
};
Copio anche l'errore per intero che per me è abbastanza illeggibile: Codice:
Error 1 error LNK2019: unresolved external symbol "public: void __thiscall IM_Weapon::SetWeaponType(enum EWeaponType)" (?SetWeaponType@IM_Weapon@@QAEXW4EWeaponType@@@Z) referenced in function "public: __thiscall IM_WeaponPistol::IM_WeaponPistol(void)" (??0IM_WeaponPistol@@QAE@XZ) C:\Users\Ivan\Documents\C++ development\Immortal\Immortal\IM_MainChar.obj Immortal |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2012
Messaggi: 1267
|
L'unresolved symbol è questo:
Codice:
"public: void __thiscall IM_Weapon::SetWeaponType(enum EWeaponType)" Scusa, ma perchè stai cercando di programmare un videogame in C++ senza conoscere bene il C++? |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Mar 2003
Città: Rimini
Messaggi: 1843
|
Trovato il problema, grazie! Non avevo implementato il metodo, maledetto me.
Non sto assolutamente cercando di implementare un gioco, sto solo facendo un esercizio, molto piccolo in realtà, c'è a mala pena un sistema di inventario per le armi e due personaggi che si sparano (niente grafica, solo qualche linea scritta a video), nel quale utilizzare un paio di tecniche che ho letto in un libro e su cui devo fare pratica (implementazione di una macchina a stati finiti per creare intelligenze artificiali e un sistema che usi la fuzzy logic per la selezione delle armi). Grazie come sempre dei consigli |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:00.



















