Avatar ·

Pourquoi ne pas écrire `using namespace std;` en C++ et quelles sont les alternatives ?

Bonjour ! J'ai commencé à apprendre le C++ et dans tous les tutoriels et exemples de code, je vois constamment la ligne `using namespace std;`. J'ai l'habitude de toujours l'écrire au début du programme, car sans elle, je dois ajouter `std::` partout, ce qui semble peu pratique. Par exemple : ```cpp #include #include #include using namespace std; int main() { vector numbers = {5, 2, 8, 1, 9}; sort(numbers.begin(), numbers.end()); cout << "Trié : "; for (int n : numbers) { cout << n << " "; } cout << endl; return 0; } ``` Mais récemment, j'ai lu que les programmeurs expérimentés conseillent de ne jamais utiliser `using namespace std;` dans des projets réels. Apparemment, cela peut entraîner des erreurs difficiles à détecter. J'ai essayé d'écrire du code sans cette directive, et il est devenu lourd : ```cpp std::vector numbers = {5, 2, 8, 1, 9}; std::sort(numbers.begin(), numbers.end()); std::cout << "Trié : "; ``` Il me semble que la lisibilité du code se détériore.