【Notes】命名空间的问题
不同命名空间中的相同名称会产生冲突,使系统崩溃,此时可以为命名空间提供一个别名,作为using语句的一部分。
Example:
1 namespace LevelOne
2 {
3 using LT=LevelTwo;
4 // name "NameTree" defined
5
6 namespace LevelTwo
7 {
8 //name "NameTree" defined
9 }
10 }
11
Levelone命名空间中的代码把LevelOne.NameTree引用为NameTree,把LevelOne.LevelTwo.NameTree引用为LT.NameTree.
2 {
3 using LT=LevelTwo;
4 // name "NameTree" defined
5
6 namespace LevelTwo
7 {
8 //name "NameTree" defined
9 }
10 }
11
在上面的代码中,全局命名空间不能使用LT.NameTree,但如果using语句声明在namespace LevelOne前就可以使用了:
using LT=LevleOne.LevelTwo;
namespace LevelOne
{
// name "NameTree" defined
namespace LevelTwo
{
//name "NameTree" defined
}
}
namespace LevelOne
{
// name "NameTree" defined
namespace LevelTwo
{
//name "NameTree" defined
}
}
浙公网安备 33010602011771号