what is namespace in c++
// A C++ code to demonstrate that we can define
// methods outside namespace.
#include <iostream>
using namespace std;
// Creating a namespace
namespace ns
{
void display();
class geek
{
public:
void display();
};
}
// Defining methods of namespace
void ns::geek::display()
{
cout << "ns::geek::display()\n";
}
void ns::display()
{
cout << "ns::display()\n";
}
// Driver code
int main()
{
ns::geek obj;
ns::display();
obj.display();
return 0;
}
// Creating namespaces
#include <iostream>
using namespace std;
namespace ns1
{
int value() { return 5; }
}
namespace ns2
{
const double x = 100;
double value() { return 2*x; }
}
int main()
{
// Access value function within ns1
cout << ns1::value() << '\n';
// Access value function within ns2
cout << ns2::value() << '\n';
// Access variable x directly
cout << ns2::x << '\n';
return 0;
}
//namespace is a declarative region to provide scope for identifiers
#include <bits/stdc++.h>
using namespace std; //including namespace std for cin and cout
//my custom namespace for variables and functions
namespace abc
{
void fun()
{
cout<<"Hello world"<<endl;
}
int x=10;
}
using namespace abc;
int main()
{
cout<<10;
fun();
return 0;
}
// A C++ program to demonstrate use of class
// in a namespace
#include <iostream>
using namespace std;
namespace ns
{
// Only declaring class here
class geek;
}
// Defining class outside
class ns::geek
{
public:
void display()
{
cout << "ns::geek::display()\n";
}
};
int main()
{
//Creating Object of geek Class
ns::geek obj;
obj.display();
return 0;
}
// A C++ program to demonstrate use of class
// in a namespace
#include <iostream>
using namespace std;
namespace ns
{
// A Class in a namespace
class geek
{
public:
void display()
{
cout << "ns::geek::display()\n";
}
};
}
int main()
{
// Creating Object of geek Class
ns::geek obj;
obj.display();
return 0;
}