Newsgroup: it.comp.lang.c++
Titolo: Sono nuova di c++. Cos'è VOID?

Sto imparando a tempo perso il c++, finora tutto ok ma purtroppo nei manuali 
che ho acquistato nessuno
spiega cosa è l'istruzione VOID che trovo all'inizio di molte routine.
Qualcuno mi sa spiegare che cos'è?
Vi ringrazio di cuore.
Sabrina 

 
Non e' un'istruzione, e' un tipo di dato (un po' speciale, a dire il vero).
una funzione dichiarata come:
void funzione();
e' una funzione che non restituisce un valore di ritorno.
A differenza di:
int altra_funzione()
{
	return 1;
}
che restituisce un valore intero (int), in questo caso 1.
void e' anche usato per i puntatori non tipizzati (void*), ma se sei 
agli inizi e' meglio non correre troppo...
Che manuali stai leggendo? Alcuni sono migliori di altri, alcuni 
provocano piu' danni che vantaggi...
Inoltre sarebbe meglio affidarsi a libri adatti al tuo livello di 
conoscenza, molti libri sul C++ trascurano molti concetti base.
-- 
Roal Zanazzi

Grazie per la risposta č stata di aiuto.
I libri che sto leggendo sono: "Visual C++ 6 senza fatica " di Paolo Guccini 
e "C++ guida alla programmazione" di Alfredo Marroccelli
Sono libri di base (ovviamente)
Ciao e grazie ancora
Sabrina 

 spiega cosa è l'istruzione VOID che trovo all'inizio di molte routine.
Bei manuali.
Kiuhnm

 Sono libri di base (ovviamente)
Oddio... il secondo non lo conosco, ma il primo non mi sento affatto di 
consigliartelo. Troppo incentrato sul "Visual" e troppo poco sul C++ e 
come lo si usa. Va bene per chi già conosce il linguaggio e vuole una 
guida al nuovo ambiente di sviluppo...
A costo zero, scaricati il PDF di "Thinking in C++" di Bruce Eckel che 
va già meglio; se puoi, compra il Deitel & Deitel (non ricordo il 
titolo), primo volume.
Void è un tipo speciale che significa "nessun tipo"... :-)
dove si usa te l'han già detto, aggiungo che non puoi creare una 
variabile di tipo void nuda e cruda, ma solo puntatori a void. E non 
puoi assegnargli un valore concreto, ma solo altri puntatori. Esempio:
void P;   <--- (Error: Size of P is unknown or zero) Bang!
//-------------------------------------------
void *P;
*P = 3; <--- (Error: Not an allowed type) Aribang!
//-------------------------------------------
void *P;
int *I;
int Var;
*I = 77563;
P = I;	   	// tutto liscio
Var = int(*P); <--- (Error: not an allowed type)
Ora, la mia scienza si ferma qui, ma l'ultima riga *DOVREBBE* poter 
essere scritta correttamente: cioè dovrebbe esistere, se non ricordo 
male, un mezzo per castare ad int il puntatore void ed assegnare a Var 
il valore a cui punta... solo che io non lo conosco :-(

 Sono libri di base (ovviamente)
Ma non tutti i testi di base sono buoni testi.
Certamente "Visual C++ 6 senza fatica" ha un target diverso dal "C++
standard".
Diciamo poi che il libro di Marrocelli/Marocchelli (non si capisce bene
come si chiama.. secondo alcune fonti Marrocelli, secondo altre
Marocchelli ho fatto una fatica a trovarlo...) non lo ho mai sentito. Ho
anche qualche dubbio su cosa possa insegnare in 164 pagine.
Fai conto che il testo "da 0" forse più gettonato, il Lippman Lajole ne
ha più di 800. E non mi vengono in mente parti "tagliabili". La roba che
c'è serve tutta.
-- 
blog:  
http://www.akropolix.net/rik0/blogs
 | Uccidete i filosofi,
site:  
http://www.akropolix.net/rik0/
      | tenetevi riso e
forum: 
http://www.akropolix.net/forum/
     | bacchette per voi.

 Var = int(*P); <--- (Error: not an allowed type)
int main()
{
     int Var;
     void *P;
     int *I = &Var;    // !!!
     *I = 77563;
     P = I;            // tutto liscio
     Var = *((int *)P);
}
Kiuhnm

 }
Sě, ma questo permette di assegnare il valore in *P solo a Var e a 
nessun'altra variabile... siamo andati piů lontano, ma di poco.

 nessun'altra variabile... siamo andati piů lontano, ma di poco.
Eh???
Kiuhnm