It is perfectly valid because the "using namespace std;" directive does not override or interfere with explicit namespace qualification. However it is better to avoid broad usage of "using namespace", you write cleaner, more maintainable, and less error-prone code, especially in larger projects.