Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-10-2006, 03:35   #1
ziph
Member
 
Iscritto dal: May 2005
Messaggi: 34
problemi di undefined reference

ciao a tutti,
vi pongo un problema che spero sia di facile soluzione, (sto programmanda in c++ da 1 settimana) ,

sto cercando di implementare una libreria per risolvere il TSP su grafo tramite Ant Colony Optimization in c++, praticamente le formiche si muovono sul grafo e trovano la soluzione migliore aggiungendo "feromone" sui lati del percorso migliore (seguiranno VRP,vehicle routing problem, multiplo con capacità e time window e il PDP,pickup and delivery problem, è per la tesi!)

il problema è questo:

header classe formica:

Codice:
class AntTSP {
	public:
		  long int  *tour;
  		  char      *visited;
  		  long int  tour_length;
		  long int  n;  		//numero di passi nel tour 
                                               (nel tsp  corrisponde al num città)
		 
		   //puntatori alle variabili del problema AcoTSP utilizzate
		  static double   **total;
		  static double   q_0;
              .....
.....vari metodi..

implementazione
Codice:
#include "AntTSP.h"

AntTSP::AntTSP()
{		
}

void AntTSP::init(long int num)
{		
          n = num;
	  tour =  new long int[n+1];
	  visited =  new char [n];
}

AntTSP::~AntTSP()
{	
         delete [] tour;
	 delete [] visited;
}

..metodi..
i membri static, che dovrebbero essere comuni a tutta la classe, vengono passati in un metodo di inizializzazione del problema, che ho chiamato AcoTSP, dopo aver creato un array di formiche, cioè riassumendo il metodo:

Codice:
void AcoTSP::initialize(const char *tsp_file_name)	  
{    
  set_default_parameters();
  TSP::initialize( tsp_file_name, nn);   //viene inizializzato col metodo di TSP
  
//alloca la colonia
  ant = new AntTSP[n_ants];
  
  for (int i = 0 ; i < n_ants ; i++ ) 
  {
  	ant[i].init(n);
  }
  
//passo i parametri del problema alla colonia
	  
          AntTSP::total;  //matrice del feromone
	  AntTSP::q_0=q_0;
...

il distruttore di AcoTSP fa il delete di ant.
Ora alla fine di tutta questa descrizione il problema è che in fase di link di un programma di prova che chiama i metodi di AcoTSP c'è un "link error undefined reference to Ant::total, Ant::q_0 ecc.." cioè di tutti i membri statici, ripetuti varie volte. Nei metodi di AcoTSP vengono chiamati metodi che lavorano sulle formiche che a loro volta utilizzano in lettura i membri statici della loro classe.

Qualcuno mi può aiutare? Vi ringrazio in anticipo.
ciaoo

Ultima modifica di ziph : 22-10-2006 alle 04:00.
ziph è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Dopo 23 anni di silenzio, Warcraft 3 spi...
Roblox sfida l'ecosistema gaming: app st...
OpenAI accusata di plagio dai migliori m...
Altro attacco hacker dell'IA: gli agenti...
Stiamo davvero perdendo il controllo del...
Microsoft perde un pilastro: Frank Shaw ...
Diablo V annunciato a sorpresa: il colpo...
Meno di 5 euro per il 5G: l'offerta Kena...
World of Warcraft: Forever è il Classic+...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
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: 20:21.


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