0
Folk,C++命名空間聲明和定義
我在一個文件中創建了一個名稱空間,但我該如何區分定義和聲明? 我可以創建一個.h的聲明和一個.cpp的定義就像在一個類的文件集?如果是,那麼,是否需要在我的新程序中包含名稱空間頭文件,還是使用namspace mynamespace足夠?
Folk,C++命名空間聲明和定義
我在一個文件中創建了一個名稱空間,但我該如何區分定義和聲明? 我可以創建一個.h的聲明和一個.cpp的定義就像在一個類的文件集?如果是,那麼,是否需要在我的新程序中包含名稱空間頭文件,還是使用namspace mynamespace足夠?
任何體面的C++書應該涵蓋命名空間和代碼分離。
嘗試這樣:
myfile.h
#ifndef myfile_H
#define myfile_H
namespace myns
{
class myclass
{
public:
void doSomething();
};
}
#endif
MYFILE.CPP:
#include "myfile.h"
void myns::myclass::doSomething()
{
//...
}
然後你就可以使用它像這樣:
#include "myfile.h"
myns::myclass c;
c.doSomething();
或者:
#include "myfile.h"
using namespace myns;
myclass c;
c.doSomething();
我該如何使用它?我是否將myfile.h包含在我的項目中,還是繼續使用namspace myns進行調用? – Pototo
是的,您可以創建一個.h的聲明和一個.cpp的定義。只需將名稱空間添加到兩個文件 – DimChtz
到第一個包的時間:兩個單詞。 – user4581301
如果您計劃在每個地方堅持使用mynamespace;那麼所有名稱都將在全局名稱空間中結束,因此不要打擾名稱空間 - 只需將名稱放在全局名稱空間中就可以開始。 –