c++17부터는 nested namespace(중첩 이름공간)을 더 간결한 형태로 표현할 수 있다.
#include <iostream>
using namespace std;
namespace Namespace1::Namespace2 // c++17부터 가능한 형태의 nested namespace
{
void foo()
{
cout << "asdfasdfdf" << endl;
}
}
int main()
{
Namespace1::Namespace2::foo();
return 0;
}
c++14까지는 아래 형태로 표현해야 했다.
#include <iostream>
using namespace std;
namespace Namespace1
{
namespace Namespace2
{
void foo()
{
cout << "asdfasdfdf" << endl;
}
}
}
int main()
{
Namespace1::Namespace2::foo();
return 0;
}