Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
Un mondo affollato e vivo, personaggi destinati a sparire a fine test e nessuno a inseguire l'oggetto giusto. Beta e stress test di World of Warcraft: Forever hanno fatto emergere un roleplay spontaneo, tra danze a Goldshire e code ordinate ai PNG
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
In tre giorni a Las Vegas Oracle ha presentato agenti che eseguono il lavoro, l'alleanza con OpenAI e un cloud aperto agli acceleratori di tutti. Ma i clienti europei chiedono garanzie prima ancora delle funzionalità
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
Fino a 740 km WLTP con la batteria da 97,2 kWh, sospensioni che leggono la strada con una telecamera e un abitacolo da salotto parigino. La nuova DS N°7 raccoglie l'eredità della DS 7 e la porta, per la prima volta, nel mondo 100% elettrico. Ecco come è fatta, cosa offre e quanto costa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-07-2013, 16:48   #1
-Ivan-
Senior Member
 
L'Avatar di -Ivan-
 
Iscritto dal: Mar 2003
Città: Rimini
Messaggi: 1846
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);
	}
};
Questa classe deriva da questa:

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...
};
Se non ho capito male ha problemi con l'enum EWeaponType.
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
E' lì l'errore? L'enum dovrebbe vederlo perchè ho incluso l'header in cui è dichiarato.
-Ivan- è offline   Rispondi citando il messaggio o parte di esso
Old 19-07-2013, 16:54   #2
vendettaaaaa
Senior Member
 
L'Avatar di vendettaaaaa
 
Iscritto dal: Jan 2012
Messaggi: 1267
L'unresolved symbol è questo:
Codice:
"public: void __thiscall IM_Weapon::SetWeaponType(enum EWeaponType)"
Il linker non vede la funzione SetWeaponType, l'enum non c'entra niente.

Scusa, ma perchè stai cercando di programmare un videogame in C++ senza conoscere bene il C++?
vendettaaaaa è offline   Rispondi citando il messaggio o parte di esso
Old 19-07-2013, 18:17   #3
-Ivan-
Senior Member
 
L'Avatar di -Ivan-
 
Iscritto dal: Mar 2003
Città: Rimini
Messaggi: 1846
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 .
-Ivan- è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più Recensione Samsung Galaxy Tab S12 Ultra: non chi...
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
Svolta per l'emulazione della prima Xbox...
Narwal celebra 10 anni: l'evoluzione tec...
TIM Enterprise acquisisce il 70% di VoiS...
Altro che dicembre, la RTX 5080 da 24 GB...
Quale futuro per Mass Effect? Tutte le i...
Schermi rotti su iPhone Duo: un report s...
Lo stealer VOLTA chiede a Claude, Kimi e...
Intel e Oracle puntano sulle CPU Xeon pe...
Offerte Amazon da urlo: Mac mini M6 a 89...
Bici elettriche a prezzi da record su Am...
Il boom dell'IA fa salire i costi: HP, A...
Cloudflare: 18,2 milioni di attacchi DDo...
GeForce RTX 2080 Ti con 22 GB di VRAM: f...
Dalla padella... ai server AI: Nvidia va...
1.000 cicli e ancora il 90,4% della capa...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:28.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v