少用点endl
C++给我们提供了一个换行的函数endl函数,不知道该不该叫函数,这个是在STLPort中的实现。
1 _CRTIMP inline basic_ostream<wchar_t, char_traits<wchar_t> >&
2 __cdecl endl(basic_ostream<wchar_t,
3 char_traits<wchar_t> >& _O)
4 {_O.put('\n');
5 _O.flush();
6 return (_O); }
大家看到没有,它的工作其实就是输出一个“\n”,不过后面又带了一句
flush(),这一句是强制刷新缓冲区的,如果每次输出都刷新缓冲区那就会影响到程序的性能,无法使用缓冲区的优点,所以使用的时候考虑是不是在很多地方需要endl,如果可以还是换成 “\n”吧,个人观点,欢迎交流。