Namespace
using s are for your convenience, not for you to inflict on others: Never write a
using declaration or a
using directive before an
Corollary: In header files, don't write namespace-level
using directives or
using declarations; instead, explicitly namespace-qualify all names. (The second rule follows from the first, because headers can never know what other header
#include s might appear after them.)