我想整齊地聲明名稱空間本地的函數和變量,所以只有名稱空間成員才能訪問它們。C++如何在命名空間中創建一個本地函數/變量?
在lua中,我將使用「本地」關鍵字來執行此操作(在文件/函數中)。 C++中可能有任何相關的東西嗎?
編輯
這裏是我的代碼僞C++樣本:
namespace wld {
const int wldDivis = 4;
void myFunc(){
// wldDivis constant used here
}
void myFunc2(){
// wldDivis also used here
}
}
// Somewhere later
wld::myFunc();
wld::myFunc2();
變量 「wldDivis」 只能用在命名空間中使用WLD。我如何將外部命名空間wld本地化/「使其不可見」作爲「強制不透明」,如果其他人可能會使用我的函數的內部工作?命名空間是否合適?
IE無法訪問以外的命名空間?
也許'static'關鍵字是你想要的,或者匿名命名空間 – user2807083
「本地命名空間」。沒有這樣的事情。無論如何,這將是無用的,因爲namesoaces是開放的。您始終可以將自己的功能添加到任何名稱空間。 –