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 15-06-2002, 11:47   #1
Luc@s
Senior Member
 
L'Avatar di Luc@s
 
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2124
Da C a C++

Cosa cambia da programmare in C++ rispetto a C oltre alle classi, l'ereditarietà ???????????


P.S: ma scanf() e printf() e tutta li libreria standard del C, si puo usare in C++????????
P.P.S: si puo programmare il C++, come se fosse C?????
__________________
Gnu/Linux User
Luc@s è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2002, 13:19   #2
Luc@s
Senior Member
 
L'Avatar di Luc@s
 
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2124
come libro va bene questo ?????????
__________________
Gnu/Linux User
Luc@s è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2002, 14:28   #3
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
Ottimo libro...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2002, 14:32   #4
Luc@s
Senior Member
 
L'Avatar di Luc@s
 
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2124
Quote:
Originariamente inviato da cionci
[b]Ottimo libro...
Allora mo, se domani me va bene l'orale me lo prendo entro 1 mese



P.S: mi risponderesti al post sull'overloading????????
P.P.S: cosa sono istream e ostream??????? io ho pensato che potrebbere essere i 2 flussi di impot uotput.............. ho sbagliato?
__________________
Gnu/Linux User
Luc@s è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2002, 14:50   #5
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 Luc@s
[b]

Allora mo, se domani me va bene l'orale me lo prendo entro 1 mese



P.S: mi risponderesti al post sull'overloading????????
P.P.S: cosa sono istream e ostream??????? io ho pensato che potrebbere essere i 2 flussi di impot uotput.............. ho sbagliato?
Sì...in pratica sono quello che dici tu...sono sequenze di input ed output---
Ti ho appena risposto all'altra domanda...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2002, 16:24   #6
Luc@s
Senior Member
 
L'Avatar di Luc@s
 
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2124
ma cosa cambia tra scrivere i files di intestazione con il .h????????
E poi sta STL è obbligatorio usarla?
__________________
Gnu/Linux User
Luc@s è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2002, 18:05   #7
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 Luc@s
[b]ma cosa cambia tra scrivere i files di intestazione con il .h????????
E poi sta STL è obbligatorio usarla?
E' una questione di standard... Gli ultimi standard per il C++ prevedono che non si usi il .h... Dal punto di vista del file di intestazione non cambia niente...

La STL certo non è obbligatorio usarla, ma fai meglio ad usarla proprio per una questione di convenienza...pensa solo a string in confronto ai vecchi vettori di caratteri del C
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2002, 18:33   #8
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
Re: Da C a C++

Quote:
Originariamente inviato da Luc@s
[b]Cosa cambia da programmare in C++ rispetto a C oltre alle classi, l'ereditarietà ???????????
In piu' rispetto al C il C++ ha oltre alle classi e all'ereditarieta:
- templates, ovvero classi, strutture e funzioni parametrizzate.
Ad esempio set<int> e' un insieme di interi, mentre set<char*> e' un insieme di puntatori a caratteri.
- gestione delle eccezioni ( come in Java tanto per chiarirsi ).

Ci sono poi altre differenze piu' o meno nascoste ( e subdole ) pero' quelle piu' consistenti sono queste ( mi sembra ).

[b]
Quote:
P.S: ma scanf() e printf() e tutta li libreria standard del C, si puo usare in C++????????
P.P.S: si puo programmare il C++, come se fosse C?????
Si puo' benissimo, solo che e' consigliabile usare gli header opportuni: al posto di stdlib.h dovresti includere cstdlib, al posto di stdio.h usare cstdio e cosi' via.
/\/\@®¢Ø è offline   Rispondi citando il messaggio o parte di esso
Old 15-06-2002, 18:36   #9
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
Quote:
Originariamente inviato da Luc@s
[b]ma cosa cambia tra scrivere i files di intestazione con il .h????????
E poi sta STL è obbligatorio usarla?
i files di intestazione col .h sono mantenuti per compatibilita' col passato, e un compilatore potrebbe neanche averli, e' quindi consigliabile passare direttamente alle intestazioni giuste ( senza .h )
La STL la usi se ti serve .
Personalmente la preferisco alla libreria standard del C, anche perche' e' decisamente piu' completa e semplice, una volta che ci fai la mano.
/\/\@®¢Ø è offline   Rispondi citando il messaggio o parte di esso
Old 16-06-2002, 08:47   #10
Luc@s
Senior Member
 
L'Avatar di Luc@s
 
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2124
esiste una guida per imparare l'SLT in inglese ma skarikabile????????
Come libro, mi consigliereste questo ????
__________________
Gnu/Linux User
Luc@s è offline   Rispondi citando il messaggio o parte di esso
Old 16-06-2002, 09:59   #11
Luc@s
Senior Member
 
L'Avatar di Luc@s
 
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2124
mi spieghi la gestione delle eccezioni( da quel che ho capito si fa con try........ giusto?..........
__________________
Gnu/Linux User
Luc@s è offline   Rispondi citando il messaggio o parte di esso
Old 16-06-2002, 15:41   #12
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
E' un discorso che e' difficile spiegare in poche righe, faro' il possibile...

Forse la cosa piu' semplice e' partire con un esempio ( idiota ):

Codice:
try{
  string x = "filename.txt";
  FILE y = f(x);
  [b]if ( y == 0 ) throw IOError;[/b]
  /* altriment continuiamo l'elaborazione */
...
} catch( IOError e )
{ /* c'e' stato un errore */
  cout << "file invalido" << endl;
}
le la funzione f ritorna un valore 0 il file non puo' essere letto e lanciamo l'eccezione: quando scriviamo throw IOError ( dove IOError e' una qualsiasi struttura che abbiamo preventivamente definito ) il programma interrompe l'esecuzione del codice e continua dall'istruzione catch. Questo e' simile alla classica gestione in "stile C" ( controllo del valore di ritorno ) nei casi semplici. Se pero' io nel codice che ho scritto chiamo una funzione che getta delle eccezioni, posso evitare di fare i controlli nel codice e limitare a fare i catch. Nell'esempio di prima , supponiamo che la funzione f invece di ritornare 0 faccia un throw IOError lei stessa in caso di errore. Allora il nostro codice diventa :


Codice:
try{
  string x = "filename.txt";
  FILE y = f(x);
...
} catch( IOError e )
{ /* c'e' stato un errore */
  cout << "file invalido" << endl;
}
Che e' un po' piu' chiaro. Oltretutto se io chiamo due,tre, dieci volte la funzione f, mi basta avere un unico catch per 'intercettare' gli errori. E inoltre se a sua volta f chiama altre funzioni che possono avere errori simili io le 'intercetto' tutte allo stesso livello.
Questo e' molto comodo nell'IO perche' mi permette di evitare di controllare lo stato del canale di input ogni volta che faccio una lettura. Ad esempio supponi di fare un server web che accetta connessioni via internet. Se il canale di input supporta le eccezioni, Invece che controllare continuamente che la connessione non sia caduta, puoi scrivere il codice senza pensare agli errori di lettura, 'inglobare' il codice tra try e catch, e nel catch semplicemente chiudere la connessione ed aspettare la prossima:

Codice:
while ( runServer )
{
 try
 {
    // aspettiamo la richiesta di input
    iostream client( socket );
    Request rq;
    Response rs;
    readRequest( client , rq );
    prepareResponse( rq , rs );
    writeResponse( client , rs ); 
  }catch( IOError e )
  {
   /* connessione caduta, avanti il prossimo ! */
  }
}
In qualsiasi punto venga lanciata l'eccezione ( durante la lettura della richiesta, durante la scrittura della risposta ) in caso di errore il controllo viene dato alla routine di gestione dell'errore: l'idea e' che solo a piu' alto livello so come comportarmi , nelle routines di lettura posso solo individuare l'errore e segnalarlo. IOError e' comunque una struttura ( o una classe ) e tutti gli effetti e quindi se e' dotata di metodi o di campi li posso usare nel 'catch' per avere migliori informazioni sull'errore.


Ci sono ancora moltissimi altri aspetti... pero' probabilmente ho gia' scritto anche troppo !

Il libro di Lippman e' un buon libro, ho sentito solo che pareri positivi .
Per il manuale meglio se cerchi con Google, dovresti trovarne parecchi su internet .
/\/\@®¢Ø è 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, ...
Avio si prepara ai test del Dimostratore...
Space Pioneer ha annunciato le cause del...
Anthropic avrebbe nuovi antibiotici cont...
Scoperto un 'moltiplicatore nascosto' ne...
DREO: a IFA 2026 4 novità fra cui...
Slackbot genera dashboard e microsite de...
Idrogeno, nuova cella a combustibile rag...
Con la NASA fuori dai giochi, l'ESA risc...
Una falla di ChatGPT permette di estrapo...
Piano clima, 1,34 miliardi per il bonus ...
Porsche esce definitvamente da Bugatti R...
NVIDIA App aggiunge una delle funzioni p...
Come sarebbe il mondo se la luce viaggia...
Titanio, ceramica e zaffiro per HUAWEI W...
Taglio delle accise sul gasolio prorogat...
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: 23:00.


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