【问题标题】:The meaning of 'in, out' in generic delegate declaration [duplicate]通用委托声明中'in,out'的含义[重复]
【发布时间】:2013-06-12 07:49:07
【问题描述】:
public delegate TOutput Converter<in TInput, out TOutput>(TInput input)

这个声明中inout是什么意思?

【问题讨论】:

标签: c# generics delegates


【解决方案1】:

这里有一篇来自 Eric Lippert 博客的精彩文章,它解释了 in 和 out 关键字。它们用于表示泛型类型参数中的协变和逆变。

What's the difference between covariance and assignment compatibility?

在协变和逆变成为 C# 4 的一个特性之前,他还撰写了一篇非常棒的 11 部分系列文章。我强烈建议您阅读它们,因为它们将真正帮助您掌握这些概念。

我刚刚检查过,它们没有相互链接(而且没有简单的方法可以链接到我能找到的系列),所以这里有一个目录。

C#中的协变和逆变

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多