Tienes que ver los namespaces como herramientas que ayudan a organizar mejor el espacio de trabajo más que una carga y una tortura. Imagina que todo lo que almacenas lo estuvieras almacenando en distintas cajas. Si tuvieras que localizar dódne está un objeto tendrías que buscarlo en esa caja concreta.
Código C++:
Ver originalnamespace forosdelweb
{
int b = 234;
}
namespace otronamespace
{
int b = 123;
}
std::cout << forosdelweb::b << std::endl << otronamespace::b << std::endl;
Piensa que tienes la variable b definida en dos scopes o contextos diferentes. Igualmente cout y endl son variables definidas dentro de otro namespace llamado
std.
Puedes usar muchos namespaces al mismo tiempo. Puedes indicar estar usando dos namespaces a la vez si qusieras no estar indicando continuamente el namespace mediante ::, pero recuerda que si usas varios namespaces las variables no pueden tener el mismo nombre porque no sabrá si te refieres a uno o a otro. Por ejemplo, implementas tú mismo un endl
Código C++:
Ver originalnamespace ibmweurope
{
const char * endl = "\n";
}
int main(){
std::cout << "Ejemplo" << ibmweurope::endl<< "Otro ejemplo" << std::endl;
return 0;
}