Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Abbiamo provato a fondo il nuovo Magic 8 Lite di HONOR, e per farlo siamo volati fino a Marrakech , dove abbiamo testato la resistenza di questo smartphone in ogni condizione possibile ed immaginabile. Il risultato? Uno smartphone praticamente indistruttibile e con un'autonomia davvero ottima. Ma c'è molto altro da sapere su Magic 8 Lite, ve lo raccontiamo in questa recensione completa.
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora
WF-1000X M6 è la sesta generazione di auricolare in-ear sviluppata da Sony, un prodotto che punta a coniugare facilità di utilizzo con una elevata qualità di riproduzione dei contenuti audio e una cura nella riduzione del rumore ambientale che sia da riferimento
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 03-10-2006, 12:11   #1
elgordoo
Junior Member
 
Iscritto dal: Mar 2006
Messaggi: 19
Aiuto su codice c++

Salve a tutti
premetto che sono alle prime armi con il c++ , nn riesco proprio a capire perchè mi da errore in esecuzione questo codice

class contesto
{
private:
list<int> **m;
public:
contesto();
};

contesto::contesto()
{
m = new list<int>*[2];
m[0]->push_back(1);
m[0]->push_back(2);

m[1]->push_back(3);
m[1]->push_back(4);
}

E nel main una semplice dichiarazione
int main()
{
contesto *p=new contesto();
}

Il compilatore dice che va bene.. ma in esecuzione mi si blocca... E se non inserisco elementi nella lista tutto funziona.

Grazie per ora dei vostri consigli
elgordoo è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2006, 15:15   #2
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
Quote:
Originariamente inviato da elgordoo
Salve a tutti
premetto che sono alle prime armi con il c++ , nn riesco proprio a capire perchè mi da errore in esecuzione questo codice

Il compilatore dice che va bene.. ma in esecuzione mi si blocca... E se non inserisco elementi nella lista tutto funziona.

Grazie per ora dei vostri consigli
Se vuoi fare un vettore dinamico di list allora devi fare cosi':
Codice:
class contesto  
{
private:
	list<int> *m;
public:
        contesto();
};

contesto::contesto()
{
	m = new list<int>[2];
	m[0].push_back(1);
	m[0].push_back(2);

	m[1].push_back(3);
	m[1].push_back(4);
}
Se non sono arrugginito dovrebbe andare bene
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2006, 19:20   #3
elgordoo
Junior Member
 
Iscritto dal: Mar 2006
Messaggi: 19
thanks

Intanto grazie


La differenza praticamente e questa

list<int> **m; (scritta da me)
a questa
list<int> *m; (scritta da te)


puoi spiegarmi perchè il compilatore non segnalava errori?
Cioè quello che ho scritto io, era effettivamente una dichiarazione di un puntatore ad un array di puntatori a liste? (oppure ho dichiarato chissa cosa)
elgordoo è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2006, 23:34   #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
Tu hai dichiarato un puntatore a puntatore a List<int>...hai allocato due puntatori a list<int>, ma non hai allocato list<int> all'indirizzo puntato da m[0] e m[1]...l'errore non lo può dare in compilazione perchè il tipo era giusto (m[0]-> accedeva in questo caso ad un oggetto di tipo list<int>, quindi il tipo torna, ma tale oggetto non era allocato ed in quanto tale genera l'errore a runtime)...

In questo caso si fa lo stesso discorso che si fa per i vettori dinamici di interi:

int *a;
a = new int[2];

Se avessi voluto far tornare tutto, sarebbe bastato aggiungere:

*m[0] = new list<int>;
*m[1] = new list<int>;
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 04-10-2006, 19:21   #5
elgordoo
Junior Member
 
Iscritto dal: Mar 2006
Messaggi: 19
thanks

ottimo direi

grazie ancora
elgordoo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo M...
Apple AirDrop su Android: dopo Pixel 10,...
Upgrade PC senza spendere una fortuna: G...
Sistema di sblocco alla iPhone anche su ...
29 offerte Amazon, rinnovate: in 2 minut...
Offerte imperdibili su lavatrici e asciu...
Kingdom Come: Deliverance 2 arriva su Ga...
Il Texas fa causa a TP-Link: accuse di m...
Google annuncia le date ufficiali di I/O...
Nuovo rilancio di Amazon Haul: -20% se s...
NVIDIA azzera la partecipazione in Arm H...
Crimson Desert può diventare GOTY...
HONOR Magic 8 Lite ufficiale: il nuovo s...
Apple prepara occhiali smart, un ciondol...
WordPress integra un assistente AI che m...
La FIA ha controllato a caldo il motore ...
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: 12:42.


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