《.NET泛型技巧之类型参数之间的转换》文章已经归档,站长之家不再展示相关内容,下文是站长之家的自动化写作机器人,通过算法提取的文章重点内容。这只AI还很年轻,欢迎联系我们帮它成长:
也就是说,如果在某个上下文中有两个不同的类型参数U和V,编译器不会知道运行时他们代表的真实类型能否进行类型转换,因此会拒绝编译如下代码:...
除非我们加以约束U是V的子类...
VB的DirectCast运算符在泛型的类型参数上作用与C#的括号运算符相同...
这样写出的类型转换实际上还是仅当U是V本身或其子类的时候才能转换成功...
很神奇?因为CType运算符在编译时自动调用了VB运行库的转换函数,该函数在运行期间对泛型类型参数的真实类型做了检查...
此外我还发现了VB运行库的ChangeType还有支持用户自定义类型转换运算符的功能...
......
本文由站长之家用户“edu.iecool.com”投稿,本平台仅提供信息索引服务。由于内容发布时间超过平台更新维护时间,为了保证文章信息的及时性,内容观点的准确性,平台将不提供完整的内容展现,本页面内容仅为平台搜索索引使用。需阅读完整内容的用户,请联系作者获取原文。