别名的使用格式如下
using 别名 = 一个已经存在的类型
例如using soholife = System;
下面我们通过几个例子来加深一下理解
namespace N
N
{
class A {}
}
namespace N
{
using A = NNA;
class B: A {}
}
这里在N中A是NNA的别名而NB则继承于NNA同样的我们也可以用下面的方式来取得同样的效果
namespace N
{
using R = NN;
class B: RA {}
}
说到这里我想提个问题先看下面的例子
namespace N
N
{
class A {}
}
namespace N
{
class A {}
}
namespace N
{
using A = NNA;
}
如果我们这样写会有问题吗?
答案当然是肯定的了!因为一个别名必须是在NAMESPACE中唯一的而上面由于已经有了class a{}我们在用using A =NNEA;就肯定要出错了!
不过如果我们改成using B =NNA;那么结果如何呢?朋友门自己想想吧!我就不多说了!
我们再来看看下面这个例子
namespace N
N
{
class A {}
}
namespace N
{
using R = NN;
}
namespace N
{
class B: RA {}
}
上面的例子中不知道大家觉得是否正确
实际上这个是错误的!原来在一个分开的单元中使用别名的时候别名只是在它所在的单元中(NAMESPACE或其它)可以使用而在其他单元中是不能够用的所以上面的那个例子中在第二个N中使用R的时候会提示R未知!当然了如果我们想使用这样的方式我们还是有办法的就是把别名R写到N的外面如下
using R = N
N
;
namespace N
{
class B: RA {}
}
如果上面的文章能全部理解的话我想你应该能对NAMESPACE有一些概念了!如果能这样的话我的目的也达到了!
[] []