Newsgroup: it.comp.lang.c++
Titolo: Revisione delle FAQ di it.comp.lang.c++

Ciao a tutti.
Come promesso avvio con questo messaggio la revisione delle FAQ di
it.comp.lang.c++ . In fondo a questo messaggio trovate le domande che
costituiscono le FAQ attuali.
Prima di rivedere le risposte esistenti, vi invito a suggerire nuove
domande che secondo voi dovrebbero essere inserite. Vorrei anche
suggerire di suddividere le domande in argomenti, in modo da
semplificare la consultazione. Un'ipotesi di suddivisione potrebbe
essere:
Il linguaggio base
La libreria standard
Strumenti di sviluppo
Documentazione on line
Libri consigliati (e sconsigliati!)
Argomenti di base
Algoritmi e pattern
La politica del newsgroup
Aspetto le vostre proposte!
Ciao,
Nicola
0) Vorrei imparare il C++, e` necessario conoscere prima qualche altro
linguaggio oppure posso imparare direttamente questo?
1) Che differenza esiste tra C++, Visual C++, Borland C++ Builder...?
2) Che differenza c'e` tra C e C++?
3) Dove posso trovare un compilatore C++ freeware?
4) Quale editor posso utilizzare per scrivere i miei programmi?
5) Dove posso trovare della documentazione sul C++ e lo standard?
6) Quali libri mi consigliate per imparare il C++ o perfezionare le mie
conoscenze?
7) Che cosa e` la memoria dinamica? Come si usa?
8) Come posso allocare dinamicamente una matrice a piu` dimensioni e
utilizzare la notazione M[i][j]?
9) Che cosa e` un header? Come si creano e come si usano?
10) Se separo le definizioni di un template dalla sua dichiarazione
ponendole in file separati (.h e .cpp) non riesco ad istanziarlo. Come
posso risolvere il problema?
11) Come si passa un array ad una funzione in C++?
12) Come posso generare numeri casuali?
13) Come mai ottengo sempre la stessa sequenza di numeri casuali?
14) La sequenza generata da rand() non e` molto buona, dove posso
trovare
generatori di numeri casuali piu` validi?
15) Che differenza c'e` tra STL e la libreria standard del C++?
16) Lavorando con i numeri in virgola mobile, non riesco ad ottenere
risultati precisi, perche`?

Suggerisco di aggiungere una domanda, creata apposta, in modo che la
risposta riassuma brevemente il modello dell'IO del C++ (che è basato
sull'accesso ai file e ai quattro (otto cone gli accessi wchar_t) stream
di default mappati, normalmente, alla console. Nella risposta
specificare a caratti cubitali che ogni altro tipo di I/O (seriali,
parallele, grafica, GUI, socket etc. etc.) non è previsto dallo standard
e pertanto va gestito in maniera system dependent (chiedendo nei
relativi gruppi).
Aggiungerei anche la classica domanda su iostream.h e, in generale,
sugli header vecchi dicendo che non sono parte dello standard e che
quindi il codice andrebbe rivisto (anche le due versioni/nomenclature
per gli strstream, già che ci siamo).
E soprattutto sposterei l'argomento "politica del NG" in testa al file.
--
Andrea Ferro
---------
Brainbench C++ Master. Scored higher than 97% of previous takers
Scores: Overall 4.46, Conceptual 5.0, Problem-Solving 5.0
More info 
http://www.brainbench.com/transcript.jsp?pid=2522556

 domande che secondo voi dovrebbero essere inserite. 
eccone una:
Usando la lib std del c++, il programma risultante sara' piu' lento del 
corrispondente in C?
che puo' essere anche generalizzata in
Usando <feature del C++>, il programma risultante sara' piu' lento 
dell'equivalente [ in C | senza feature ]

 dell'equivalente [ in C | senza feature ]
Che risposta ti aspetti?
Ciao,
Nicola

domande che secondo voi dovrebbero essere inserite.
Fra le prime domande che cos'è lo standard? almeno non ci saranno
lamentele quando diremo che non è standard.
-- 
                    Marco Barisione (ICQ 84277092)
Se sei interessato alla creazione di it.comp.lang (per i linguaggi di
programmazione senza un gruppo apposito e per i confronti fra i
linguaggi) partecipa alla discussione sul manifesto su it.news.gruppi.

 Che risposta ti aspetti?
cos'e', un test?-)
la solita che si da qui, cioe':
Non e' detto che l'accesso ad un vector<int> sia piu' lento di uno a 
int[], e spesso svolgere le stesse operazioni con del codice C risulta 
non solo piu' lento, ma anche stramaledettamente complicato 
(polimorfismo e template su tutti)
va bene, Maestro?-)
(ovviamente la risposta dovra' essere mooolto migliorata, ma il succo 
mi sembra ci sia tutto)

corrispondente in C?
A questo proposito, consiglio di inserire anche un link al
sito di Alex Vinokur, in cui si raffrontano C e C++.
http://alexvn.freeservers.com/s1/alexvn.html#label_Performance
-- 
The Follet

 La politica del newsgroup
propongo di spostare la parte "La politica del newsgroup" in cima alle 
FAQ, in modo che sia ben visibile. Altrimenti, se la mettiamo alla 
fine, il rischio concreto e' che i lettori la saltino ("ma cosa me ne 
frega della politica del ng... io provo a postare il mio quesito sui 
bottoni, poi vederemo...").
 
Inoltre, credo che sarebbe utile anche un'altra FAQ:
"Uso il compilatore *, ma quando lancio il programma non riesco a 
vedere i risultati perche' la finestra si chiude troppo velocemente".
ciao Anto
-- 
Antonio Cuni, 19 anni, studente
Brainbench C++ Master: 4.6, higher than 98% of all previous test takers.
C Language: 3.32, higher than 79% of all previous test takers.
Guida C/C++ di Programmazione.it: 
http://cpp.programmazione.it

 Aspetto le vostre proposte!
"Dove posso trovare questo quel compilatore da scaricare gratis?"
A meno che le cose non siano cambiate radicalmente da quando postavo spesso
questa domanda era posta almeno 3 o 4 volte a settimana...
Ovviamente sempre riferendosi a compilatori commerciali.
--
DGP85
May the Force be with you!

 vedere i risultati perche' la finestra si chiude troppo velocemente".
e la risposta e':
Hai un computer troppo veloce, comprane uno piu' lento ;)


Io propongo anche la FAQ su come svuotare il buffer di std::cin
(ossia input da console).
Per far capire come funzionano le cose bisognerebbe spiegare il concetto
di carattere separatore (ad esempio uno spazio per una stringa).
Poi (anche se non propriamente standard) come avviene un tipico
input da console (il fatto che bisogna premere [INVIO] per terminare
l'input e ciň che questo comporta.
Ciao  Manlio Perillo

La politica del newsgroup
Quest'ultima la metterei in cima, inoltre proporrei due faq riguardo
la famosissima questione del confronto fra c e c++. Per la precisione
qualcosa di questo tipo.
1) ma il c++ é veramente più lento del c?
2) ho dubbi sul fatto che il c++ possa essere il linguaggio adatto per
realizzare sistemi operativi o programmi dove sono richieste le
massime prestazioni.
E poi ci sono numerosi anche domande comuni che sarebbe utili mettere
nelle FAQ, adesso però non mi viene nulla di specifico in mente.
Il Ghenio
-----
These are my parting words to you:
those who give up are doomed!
-----

 wrote in message
news:15954941....@iol.it...

Azz. E dove lo trovo. Stavo usando un 486 a 33MHz con 16Mbyte di RAM!


 della mega-flame sui numeri casuali di qualche mese fa).
Occhio che in una FAQ non ha senso inserire domande OT. Puoi inserire
domande che hanno aspetti IT e aspetti OT, rispondendo agli aspetti IT e
rimandando ad altra sede per gli aspetti OT. Oppure puoi dire cosa non è
IT nella "prefazione" alla FAQ dove rimandi al manifesto e alla sua
corretta interpretazione.
Il fatto che ci siano molte domande OT non le rende FAQ.


 Azz. E dove lo trovo. Stavo usando un 486 a 33MHz con 16Mbyte di RAM!
http://sourceforge.net/projects/z88dk/
Completo di g++ :)

 Occhio che in una FAQ non ha senso inserire domande OT. Puoi inserire
Credo che Ghenio si riferisse a un *esempio* ovvero a dimostrare quali
domande non vanno poste, non di inserire delle domande OT come faq...
-- 
DGP85
May the Force be with You!


11a) Come si ritorna un array da una funzione?
Risposta:
La soluzione piu` semplice e` sicura consiste nell'usare il
contenitore standard std::vector<> passando alla funzione
una sua istanza per riferimento:
#include <vector>
voif RitornaUnVettore(/*parametri vari */, std::vector<TuoTipo>& Ris)
{
	....
	/* inserisce i valori da restituire in Ris */
	...
}
Paolo