PDA

Visualizza la versione completa : [C++] Significato di "std::"


sys14
01-04-2011, 19:02
Salve a tutti,

Ho un piccolo problema, ho meglio un chiarimento:


#include <iostream>

int main() {
std::cout << "Hello, World\n";
return 0;
}


Perch prima di cout presente std:: a che serve?

mistergks
01-04-2011, 20:00
sarebbe lo spazio dei nomi..in cui p incluso cout e anche cin ecc...
puoi non usarlo includendo nell'intestazione "using namespace std";
in questo modo puoi scrivere soltanto cout e non std::cout

Alex'87
01-04-2011, 21:11
Originariamente inviato da sys14
Salve a tutti,

Ho un piccolo problema, ho meglio un chiarimento:


#include <iostream>

int main() {
std::cout << "Hello, World\n";
return 0;
}


Perch prima di cout presente std:: a che serve? l'indicazione del namespace, ovvero del "contenitore" (diciamo cos) che include la dichiarazione di cout (e molte altre cose come cin, endl, string ecc). Questo stato fatto per evitare sovrapposizioni nel nome di classi e oggetti: possono esserci pi "cout" allo stesso tempo ma devono essere di namespace diversi, ad esempio std::cout e personale::cout (dove personale un namespace che ci creiamo noi).

Loading