1
這是我的示例代碼及其輸出。爲什麼只需要在全局命名空間中包含向量(以及其他頭文件)?
namespace AAA
{
#include <vector>
}
int main()
{
AAA::std::vector<int> vec;
return 0;
}
/usr/include/c++/4.9/new:129:41: error: 'void* AAA::operator new(AAA::std::size_t)' may not be declared within a namespace
__attribute__((__externally_visible__));
- 爲什麼不允許聲明命名空間中的運營商新/刪除?
- 標準要求包括
<vector>
(以及其他頭文件)是否來自全局命名空間?
想一想這會做什麼。請記住'#include'指令只是擴展了包含文件中的文本。 –
每個問題有一個問題。 –
我寫了一些準確的內容來完成你所提到的 - 將矢量代碼放入命名空間。 – user1289