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 12-02-2003, 20:12   #1
verloc
Senior Member
 
L'Avatar di verloc
 
Iscritto dal: Jan 2000
Messaggi: 551
C++ Usare l'operatore subscript in un STL vector multidime

Come potrei usare qualcosa del genere
nella funzione PrintParete?

Parete[i][j]


Perchè ho necessità di scrivere codice nelle iterazioni a seconda che i e j siano pari o dispari
in diverse combinazioni.
Ho fatto diversi tentativi ma non vanno.

Vi allego l'esempio che itera usando gli "Iteratori"



//--------------------------------------------------
typedef vector<CPannello> vStriscia;
typedef vector<vStriscia> vParete;

//-------------------------------------------------
//funzione di test
//Stampa l'altezza di ogni pannello striscia per striscia
//chiamando il metodo ::GetH per ogni pannello

void PrintParete(vParete &Parete);
void PrintParete(vParete &Parete)
{
vParete::iterator i;
vStriscia::iterator j;

cout.setf(ios_base::left);
for(i=Parete.begin();i<Parete.end();i++)
{
cout.width(10);

cout<<"Striscia ";
for(j=(*i).begin();j<(*i).end();j++)
{

cout.width(10);

cout<< (*j).GetH()<<" ";
}
cout<<endl;
}
}
verloc è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2003, 22:35   #2
dm69
Senior Member
 
Iscritto dal: Dec 2001
Messaggi: 428
L'espressione:

variabile[i][j]

la puoi fare (credo) se variabile e' di un tipo T per il quale e' definito l'operatore [] tale che ritorna un tipo K che a sua volta possiede l'operatore [].
In pratica le due indicizzazioni sono 2 operatori applicati uno sul risultato dell'altro.

Provalo.

Ciao.
__________________
PC: Phenom 2 955, 4 GB RAM DDR3, 2 x ATI HD 7870 Ghz edition
dm69 è offline   Rispondi citando il messaggio o parte di esso
Old 13-02-2003, 09:37   #3
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
Trattandosi di un vector di vector in teoria non dovrebbe dar problemi. Che errore ti da ?


P.S: Usate i tag [ code ] e [/ code ] per i sorgenti vi prego !
/\/\@®¢Ø è offline   Rispondi citando il messaggio o parte di esso
Old 13-02-2003, 19:09   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Appunto...
A me una cosa del genre funziona :
Codice:
typedef vector<int> vInt;

void main()
{
	vector<vInt> v;
	v.resize(10);
	for(vector<vInt>::iterator i=v.begin(); i<v.end(); ++i)
	{
		(*i).resize(10);
		for(vInt::iterator j=(*i).begin(); j<(*i).end(); ++j)
			*j = 5;
	}

	for(i=v.begin(); i<v.end(); ++i)
		for(vInt::iterator j=(*i).begin(); j<(*i).end(); ++j)
			cout << *j;
}
Inoltre funziona perfettamente anche con le doppie quadre...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2003, 07:52   #5
verloc
Senior Member
 
L'Avatar di verloc
 
Iscritto dal: Jan 2000
Messaggi: 551
Avete ragione non capisco perchè non riuscivo a compilare la versione con le quadre
Ieri ci ho messo 2 minuti a riscriverla...
Mi scuso con tutti per la non indentazione ... me so scordato

In realtà come dice Cionci la versione con gli iteratori funzionava, sono stato io a non averlo esplicitamente detto...(scusami Cionci )

Ecco come funziona la versione con le quadre.

Codice:
void Print_H_Parete(vParete &Parete)
{

    cout.setf(ios_base::left);
    for(unsigned int i=0;i<Parete.size();i++)
    {
        cout.width(10);
        
        cout.width(10);
        cout<<"Striscia:H(i) ";
        for(unsigned int j=0;j<Parete[i].size();j++)
        {
            
            cout.width(10);
           
            cout<< Parete[i][j].GetH()<<" ";
        }
        cout<<endl;
    }
}

quindi basta scrivere [i][j].metodo_della_classe
Grazie a tutti per l'interessamento...sono un po stressato per sta tesi...
verloc è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2003, 09:42   #6
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Che riguarda la tesi ?!?!?!
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2003, 10:11   #7
verloc
Senior Member
 
L'Avatar di verloc
 
Iscritto dal: Jan 2000
Messaggi: 551
Un software per la verifica sismica degli edifici in muratura.
Non sono un informatico studio ingegneria civile .
Ciao Cionci e ... ancora grazie

Spero mi aiuterete ancora in seguito .
verloc è offline   Rispondi citando il messaggio o parte di esso
Old 14-02-2003, 23:19   #8
ri
Senior Member
 
L'Avatar di ri
 
Iscritto dal: Feb 2003
Città: fra casa e lavoro
Messaggi: 1061
ma usate i functor per ste cose che son tanto carini da vedere
ri è offline   Rispondi citando il messaggio o parte di esso
Old 15-02-2003, 18:34   #9
verloc
Senior Member
 
L'Avatar di verloc
 
Iscritto dal: Jan 2000
Messaggi: 551
Sei un po generico :

Fammi un esempio.
Ma ti prego,se riguarda l'outputing lasciamo stare.
Perchè questi sono i classici dirty-codes per vedere giusto se funzionano.
Se ti riferisci a qualche fobject che mi gestisce le combinazioni di indici pari e dispari nelle iterazioni sei il benvenuto
verloc è 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...
Una tassa di 5,5 centesimi su ogni gigab...
Vuoi clonare un videogioco con l'IA? Cla...
Furto da 6,3 miliardi di dollari, Binanc...
Gli USA dipendono dai robot stranieri: T...
Volkswagen non ha più soldi per l...
Telescopio spaziale Hubble: la NASA cerc...
Più sottile e potente: le nuove i...
Il JPL estende la vita operativa della s...
DAZN Full è in offerta: tutta la ...
GTA 6 su PC potrebbe arrivare prima del ...
Da zero al tracciato in secondi: LibreCo...
Il regista Rian Johnson lancia a 12,99 d...
Microsoft stravolge l'app Sicurezza di W...
Mercato smartphone in caduta libera: -20...
Android 17 QPR3 Beta 3 riporta il blocco...
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: 06:49.


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