Me acabo de unir a un nuevo proyecto de software C ++ y estoy tratando de entender el diseño. El proyecto hace uso frecuente de espacios de nombres sin nombre. Por ejemplo, algo así puede ocurrir en un archivo de definición de clase:
// newusertype.cc
namespace {
const int SIZE_OF_ARRAY_X;
const int SIZE_OF_ARRAY_Y;
bool getState(userType*,otherUserType*);
}
newusertype::newusertype(...) {...
¿Cuáles son las consideraciones de diseño que pueden hacer que uno use un espacio de nombres sin nombre? ¿Cuáles son las ventajas y desventajas?
static
. ¿Puedes por favor también comparar con__attribute__ ((visibility ("hidden")))
?