1º Para poder abrir un espacio de nombres de forma local en lugar de en todo el archivo entero:
namespace MiSuperLibreria {2º Uno de los usos de static es el indicar que una variable únicamente ha de poder verse en el archivo en el que se ha declarado. Pero con la llegada de C++ la forma correcta de hacer esto es usando los espacios de nombres sin nombre:
class Torcuato {
// …
};
};
namespace {
using namespace MiSuperLibreria;
Torcuto variable1;
};
MiSuperLibreria::Torcuato variable2;
Torcuato variable3; // Aquí dará error el compilador
#include <iostream>
namespace {
int variable;
};
int main() {
std::cout << variable << std::endl;
}
Por último tened en cuenta que el compilador C++ de Microsoft no se lleva demasiado bien con los namespace sin nombre así que si lo usáis es mejor desactivar las cabeceras precompiladas.
No hay comentarios:
Publicar un comentario