contravariance 相关问题

在编程语言的类型系统中,协方差和逆变是指从较窄到较宽的类型的排序以及它们在某些情况下的可互换性或等价性(例如参数,泛型和返回类型)

kotlin在树视图中正确使用协变量和协方差

Hello stackoverflow社区,我写了一个使用泛型类型的方法。我感到奇怪的是,这有点复杂。在互联网上,我发现了对数方差和...

回答 1 投票 0

协方差是否都是关于接受值?

协方差是否全部与接受值有关?我正在通过C#书中的CLR学习C#。我遇到了以下摘录:由于T是协变的,因此可能会有以下代码...

回答 1 投票 2

Convarivariance / Covariance-无法将类转换为接口

我有以下代码公共接口IInterface {}公共类GenericClass 其中TSomeClass:类{公共TSomeClass SomeMethod(TSomeClass someClass = null){...

回答 2 投票 0

为什么将Int => Int传递给采用AnyVal =>的函数,当Int扩展AnyVal时,Int导致类型不匹配?

我是scala的新手,我很难将func作为参数传递给另一个func。我试图传递的函数应该有一个参数,但我不知道它的类型(但它是一个...

回答 2 投票 0

Java中的矛盾和继承有什么区别?

我有一个父类A,它的子类B。这两个摘要之间有什么区别:public static void main(String [] args){ArrayList super A> e = new ArrayList&...

回答 1 投票 0

如何将泛型类用作具有约束类型方法的参数

我仍在尝试完全理解泛型,尤其是与基类一起使用时。我有一个通用的表类,它接受行类的派生类型,但是被限制为...

回答 1 投票 0

用代码示例误解Java中的逆变差[重复]

我正在尝试一个易于理解的关于Java中的逆变和理解问题的例子。在下面的例子中,我有List super CarBill> list1。我的理解是我应该......

回答 3 投票 0

在将匿名方法分配给委托时,协方差和逆变不起作用

我有以下代码,取自此MSDN:public class First {} public class Second:First {} public delegate First SampleDelegate(second a); //匹配签名公共静态......

回答 1 投票 2

嵌套接口的逆变问题

interface IModel {} class Model:Model {} interface IService 其中T:IModel {}类ServiceS:IService {}鉴于上面的类和接口的定义,...

回答 1 投票 2

C#泛型委托中的协方差/逆变问题

在下面的代码中,有两个带有协方差/逆变的通用委托声明://错误的代码,因为Delegate1实际上需要协方差public delegate void Delegate1 (); ...

回答 1 投票 1

为什么TEventArgs在.NET生态系统的标准事件模式中没有逆变?

在了解.NET中的标准事件模型时,我发现在引入C#中的泛型之前,处理事件的方法由此委托类型表示:// //摘要:// ...

回答 1 投票 22

在C#中引用和输出参数,不能标记为变体

该陈述是什么意思?从这里ref和out参数在C#中,不能标记为变体。 1)是否意味着不能做以下事情。公共类SomeClass :...

回答 4 投票 13

代表的方差规则的奇怪示例

在Eric Lippert关于协方差和逆变或差异的博客文章中,以及在诸如C#in a Nutshell等书籍中,有人说:如果你要定义一个通用的委托类型,它就是......

回答 1 投票 2

接口列表接口,如何选择接口实现的一种类型

这是我在StackOverflow上的第一个问题,所以请原谅并告诉我,如果我做错了什么。问题:我写了一些连接到DB和文本文件的字典等等。

回答 2 投票 1

将多个逆变代表存储在字典中

我有以下声明:私人代表ITask CreateObjectDelegateAsync (T @object)其中T:Model.Object;我想将它存储在字典中:Dictionary

回答 1 投票 2

C#如何遍历普通子类的公共父类的字典?

我有这种情况:class Animal {int size; }类Dog:Animal {string Name; }类Cat:Animal {string Alias; } public void Check(字典 动物 ) { ...

回答 1 投票 0

什么是Rust的逆变使用示例?

在Nomicon关于子类型的部分中,它表示函数指针类型具有逆变性。但是,我找不到任何好的例子。我试图用函数编写一个结构...

回答 1 投票 -1

C#非通用ISet接口

.NET 4.0引入了一个非泛型的IList,它暴露了向List添加值而无需知道泛型类型的能力。这很有用,因为它允许我编写一个方法,如...

回答 1 投票 2

为什么不检查对象私有或对象保护定义的方差位置是否安全?

我了解到Scala不会检查对象私有(私有[this])或对象保护(protected [this])定义的方差位置。为什么不检查它们是否安全?我读过一些......

回答 1 投票 5

为什么Liskov替换原则需要论证是逆变的?

Liskov替换原则对派生类中的方法签名强加的规则之一是:子类型中方法参数的反演。如果我理解正确,那就是......

回答 3 投票 5

© www.soinside.com 2019 - 2024. All rights reserved.