En los ficheros de cabecera, se debe evitar de forma escrupulosa
cualquier contaminación del espacio de nombres. Es decir, si se
cambia el espacio de nombres fuera de una función o clase,
provocará que el cambio ocurra también en cualquier fichero que
incluya ese fichero de cabecera, lo que resulta en todo tipo de
problemas. No están permitidas las declaraciones using
de
ningún tipo fuera de las definiciones de función, y tampoco deben
ponerse directivas using
globales en ficheros de
cabecera.
En ficheros cpp
, cualquier directiva
using
global sólo afectará a ese fichero, y por eso en
este libro se usan generalmente para conseguir código más legible,
especialmente en programas pequeños.