<string.h> est un en-tête C ; <string> est un en-tête C++.
Dans les en-têtes C++, (genre <iostream>, <string>, ...) tout est déclaré dans l'espace de nom std. Du coup en théorie tu devrais faire ça:
Code :
- #include <iostream>
- #include <string>
- std::string s( "tutu" );
- std::cout << s << std::endl;
|
comme ça alourdit pas mal la notation, on précise en général au compilateur qu'on va utiliser un certain nombre de membres de l'espace de noms std :
Code :
- #include <iostream>
- #include <string>
- using std::string;
- string s( "tutu" ); // pas besoin de préciser std:: grâce au "using"
- std::cout << s << std::endl; // std:: obligatoire car pas de "using"
|