|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: May 2002
Città: Massa Carrara
Messaggi: 589
|
cout vs printf
ma perche usare cout invece di printf in c++?
quali sono i motivi?(obiettivi) |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2123
|
printf ha un controllo sul tipo deciso dall'utente che cout fa da solo rendendosi pero + pesante e lento(ma nn cosi tanto da apparire all'occhio dell' utente)
IMHO
__________________
Gnu/Linux User ![]() |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Perchè cout è C++ mentre printf è derivata dal C... Se si programma ad oggetti (perchè usare il C++ se non si programma ad oggetti) è meglio usare cout... Vedi ad esempio la ridefinizione dell'operatore <<...
|
![]() |
![]() |
![]() |
#4 | |
Senior Member
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2123
|
Quote:
Io a volte lo uso quando devo fare programmini piccoli in cui nn uso gli oggetti e IoProgrammo lo consiglia x ottimizzare. Cmq il C++ nn va solo ad oggetti ......... se poi mi dici che il C c'è solo x compatibilita è un altro paio di maniche.
__________________
Gnu/Linux User ![]() |
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Il C++ è stato creato per programmare ad oggetti...se si vuole programmare in maniera simile al C allora si programma in C
![]() Concordo che a volte le funzioni di I/O della libreria standard C possono tornare utili, ma ormai con la STL inclusa nello standard hanno perso molta dell'utilità originaria... Le stringhe del C++ sono le string e non i vettori di char ![]() Chiaramente per fare un programmino sbrigativo può succedere di usarle...ma quel programmino sbrigativo il 90% delle volte è compatibile con il compilatore C99 (magari con piccoli cambiamenti)...quindi in pratica abbiamo programmato in C ![]() |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: May 2002
Città: Massa Carrara
Messaggi: 589
|
insomma non ci ho ancora capito bene la differenza.
la cout e' piu' pesante? e' anche piu' flessibile, ma qualcuno mi vieta di usarle entrambe? per esempio se ho un compilatore c, non posso usare cout? datemi qualcheesempio tangibile,,, ciao. ![]() |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Con un compilatore C non puoi usare cout... Nessuno ti vieta di usarle entrambe...ma un programma ad oggetti in C++ con I/O con la libreria standard C IMHO è veramente brutto... Riguardo alla pesantezza...non è poi così tanto più pesante
![]() cout tra l'altro non è una funzione, ma un'istanza della classe ostram (se non sbaglio) ![]() |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: May 2002
Città: Massa Carrara
Messaggi: 589
|
ok grazie
e' una regola non scritta di programmazione, semplicemente si usa far cosi' ed e' quindi piu' normale, e come dici tu cionci puo' essere veramente brutto a vedere, ma questioni specifiche per cui sia "vietato" non ci sono. ![]() |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
No...questioni tecniche no...
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:50.