当您将对象数组转换为字符串数组时,它叫啥?
Posted
技术标签:
【中文标题】当您将对象数组转换为字符串数组时,它叫啥?【英文标题】:What's it called when you cast an array of objects to an array of strings?当您将对象数组转换为字符串数组时,它叫什么? 【发布时间】:2010-11-15 21:45:32 【问题描述】:它有一个特殊的名字,但我不记得它是什么了。有两个不同的术语,一个用于将子类的数组转换为其超类的数组,另一种方式。
【问题讨论】:
我们(社区)可以不接受错误的答案吗? 社区(我们)应该对它投反对票,其他一切都应该遵循。大概吧。 【参考方案1】:数组向上转换和数组向下转换。
编辑:协变和逆变是根据组合和继承语义将某些类型视为相同或不同的能力。这与强制转换数组无关,这只是协方差发挥作用的一种情况。
【讨论】:
你知道,这比协方差和反方差更容易记住。也许我们应该改变术语?大声笑【参考方案2】:协方差和逆变。大概吧。
【讨论】:
@Steve:我认为你是对的。有关 C# 中的协变和逆变的更多信息:blogs.msdn.com/ericlippert/archive/2007/10/16/… 我包含该链接是因为第一部分更笼统地讨论了协变和逆变,以防人们想要了解它们的背景。 这就是我试图想到的。谢谢。 我猜从那篇 msdn 博客文章中它并不特别适用于数组。但这是我的想法。 @Max:Eric 系列的第二部分专门处理数组协方差(但不是逆变)(在 C# 中):blogs.msdn.com/ericlippert/archive/2007/10/17/…【参考方案3】:装箱和拆箱?
【讨论】:
不,这是一个与转换数组有关的术语。 老实说,我想不出任何专门与数组相关的术语。 +1 有趣的问题。以上是关于当您将对象数组转换为字符串数组时,它叫啥?的主要内容,如果未能解决你的问题,请参考以下文章