#include <iostream>
namespace name
{
void func();
}
void name::func()
{
int x = 1;
std::cout << x;
}
namespace person
{
void func();
}
void person::func()
{
int x = 2;
std::cout << x;
}
using namespace name;
using namespace person;
int main()
{
func();
//what would x equal 1 or 2?
//what happens when two namespaces initializes same variables or functions?
//you get an error!!
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKbmFtZXNwYWNlIG5hbWUKewogICAgIHZvaWQgZnVuYygpOwp9CnZvaWQgbmFtZTo6ZnVuYygpCnsKICAgIAoJaW50IHggPSAxOwogICAgc3RkOjpjb3V0IDw8IHg7Cn0KbmFtZXNwYWNlIHBlcnNvbgp7CiAgICAgdm9pZCBmdW5jKCk7Cn0gCnZvaWQgcGVyc29uOjpmdW5jKCkKewoJaW50IHggPSAyOwogICAgc3RkOjpjb3V0IDw8IHg7Cn0KCnVzaW5nIG5hbWVzcGFjZSBuYW1lOwp1c2luZyBuYW1lc3BhY2UgcGVyc29uOwoKaW50IG1haW4oKQp7CiAgICBmdW5jKCk7CiAgICAvL3doYXQgd291bGQgeCBlcXVhbCAxIG9yIDI/CiAgICAvL3doYXQgaGFwcGVucyB3aGVuIHR3byBuYW1lc3BhY2VzIGluaXRpYWxpemVzIHNhbWUgdmFyaWFibGVzIG9yIGZ1bmN0aW9ucz8KICAgIC8veW91IGdldCBhbiBlcnJvciEhCn0=