不同命名空间中的相同名称会产生冲突,使系统崩溃,此时可以为命名空间提供一个别名,作为using语句的一部分。
namespace LevelOne
{
using LT=LevelTwo;
namespace LevelTwo
{
//name "NameTree" defined
}
}
{
using LT=LevelTwo;
// name "NameTree" defined
namespace LevelTwo
{
//name "NameTree" defined
}
}
Levelone命名空间中的代码把LevelOne.NameTree引用为NameTree,把LevelOne.LevelTwo.NameTree引用为LT.NameTree。
在上面的代码中,全局命名空间不能使用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
}
}