Sí, si desea declarar la variable de ámbito de archivos, entonces es necesaria la palabra clave static
. static
variables declaradas en una unidad de traducción no pueden ser referidas desde otra unidad de traducción.
Por cierto, el uso de static
palabra clave está en desuso en C++ 03.
La sección 7.3.1.1 $/2 del estándar de C++ (2003) lee,
El uso de la palabra clave estática es obsoleto al declarar objetos en un ámbito espacio de nombres; el namespace sin nombre proporciona una alternativa superior .
C++ prefiere no identificado espacio de nombres sobre static
palabra clave. Ver este tema:
Superiority of unnamed namespace over static?
Suena como tarea –
Suena como si alguien llamara algo a la tarea –