前端之家收集整理的这篇文章主要介绍了
c# – 嵌套类.GetType(),
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在弄乱嵌套类并将类型
名称输出到控制台窗口时,我注意到了一些奇怪的事情.我想知道是否有人可以为我解释一下.在主类上
调用GetType()时,它返回我期望的
内容,即相关
名称空间后的类的
名称.即Namespace.Namespace.Classname
但是,当我从封闭类中调用一个函数来返回嵌套类的类型时,我得到返回的值,如下所示:
Namespace.Namespace.ClassNameEnclosing + ClassNameNested.
为什么它不是简单地以点符号返回.为什么符号?我只是好奇在后台发生了什么导致这种表示法.
点用于表示
名称空间.嵌套类仍然在同一个命名空间中,它只是嵌套在一个类中.
我不能随意(从对ECMA-335的简短研究中)判断一个包含点的不合格类型名称在IL中是否实际有效;我怀疑它会,但它会使各种诊断难以阅读.
原文链接:https://www.f2er.com/csharp/99121.html