-
Un autre argument en faveur de l'utilisation de "std::" au lieu de "using namespace", pour les d�butants, est que cela permet d'apprendre les mots cl�s qui font parti du langage et les "mots cl�s" qui font parti de la lib standard. On voit r�guli�rement des debutants ne pas savoir faire la distinction entre les 2.
Concernant "std::endl", c'est un point sur lequel je ne suis pas d'accord avec Jason (et les C++ core guidelines, je crois qu'elles recommandent la meme chose). Si on affiche des choses dans la console, osef des performances. Si on affiche des milliers de ligne, au point o� les performances perdues par std::endl seront perceptibles par le dev, alors il mettra plus de temps a lire ces lignes que le programme a les afficher. Si on �crit dans un fichier, Jason montre dans sa vid�o que cela prend 1 second pour �crire 1 million de ligne. Est-ce r�ellement critique ? Si on veut plus de performances, la question de ne pas utiliser les flux se posera de toute facon. Bref, on peut utiliser sans probl�me "std::endl".
(A mon sens, c'est une erreur de regarder simplement les performances brutes et de conclure que "\n" est mieux parce que 10 fois plus rapide. Il faut que les performances soient pertinentes, que l'impact sur l'exp�rience utilisateur a du sens. La performance pour la performance est une source recurente de probl�mes en C++)