Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

เนมสเปซสามารถซ้อนกันใน C ++ ได้หรือไม่


ใช่ เนมสเปซสามารถซ้อนกันใน C ++ เราสามารถกำหนดเนมสเปซหนึ่งเนมสเปซภายในเนมสเปซอื่นได้ดังนี้ −

ไวยากรณ์

namespace namespace_name1 {
   // code declarations
   namespace namespace_name2 {
      // code declarations
   }
}

คุณสามารถเข้าถึงสมาชิกของเนมสเปซที่ซ้อนกันได้โดยใช้ตัวดำเนินการความละเอียดดังต่อไปนี้ -

// to access members of namespace_name2
using namespace namespace_name1::namespace_name2;
// to access members of namespace:name1
using namespace namespace_name1;

ตัวอย่าง

#include <iostream>
using namespace std;
// first name space
namespace first_space {
   void func() {
      cout << "Inside first_space" << endl;
   }
   // second name space
   namespace second_space {
      void func() {
         cout << "Inside second_space" << endl;
      }
   }
}
using namespace first_space::second_space;
int main () {
   // This calls function from second name space.
   func();
   return 0;
}

ผลลัพธ์

Inside second_space