根據這個鏈接幫助澄清我對不合格的名稱查找疑問:ISO n3290草案
A point from C++0x draft : n3290
應在本計劃是正確的嗎?
EX:
namespace X {};
enum Foo
{
X = 0, #1
Y,
Z = X // X refers to the enum, not the type
};
蔭得到錯誤而執行這一計劃像//#1「X」重新聲明爲不同意義的符號
但在上述聲明鏈接...含枚舉符命名空間範圍。 ...等
請澄清我的疑問。
否則請任何人給我,證明上述聲明(連結)的例子有命名空間
但是對於Struct X示例,它不會根據上述ISO語句創建衝突。但是對於名稱空間而言,它不起作用...我可能知道原因...爲什麼?請解釋一下 – user751747
我以爲我做到了。 :-)通過聲明一個結構,你可以隱藏名字。無論如何,你可以通過編寫'struct X'來獲得結構體。這是從C繼承的。命名空間是一個C++特性,工作方式不同。 –