当前位置: 首页 > 编程笔记 >

C#变量类型作为参数和返回值

靳茂
2023-03-14
本文向大家介绍C#变量类型作为参数和返回值,包括了C#变量类型作为参数和返回值的使用技巧和注意事项,需要的朋友参考一下

示例

如果协变量类型显示为输出,则包含类型为协变量。生产Ts的生产者就像生产Ts。

interface IReturnCovariant<out T>
{
    IEnumerable<T> GetTs();
}

如果逆变类型显示为输出,则包含类型为逆变。产生Ts的消费者就像消费Ts。

interface IReturnContravariant<in T>
{
    IComparer<T> GetTComparer();
}

如果协变类型作为输入出现,则包含类型是协变的。消费Ts的生产者就像消费Ts。

interface IAcceptCovariant<in T>
{
    void ProcessTs(IEnumerable<T> ts);
}

如果逆变类型显示为输入,则包含类型为协变。消费Ts的消费者就像生产Ts一样。

interface IAcceptContravariant<out T>
{
    void CompareTs(IComparer<T> tComparer);
}
           

 类似资料:
  • 我的函数使用一组给定的输入参数(变量)调用Python函数,并返回包含函数输出的元组(变量,因为输出随调用的函数而变化)。 我正在使用C 11通过MinGW-w64编译器的g端口在视窗10机器上编译。我声明了这个模板变量函数(并调用它)如下: 但是,会引发此错误(为了可读性,缩短为):

  • 我试图创建一个Java方法,它接受一个对象类型和它应该转换成的数据类型。 例如,如果我应该能够返回一个值1作为Int或双根据需要。我使用类传递数据类型作为参数。 问题:如何使方法泛型以接受基于输入参数的返回类型? 下面的代码只是一个示例,它可能在语法上不正确,用于解释我的问题。

  • 我有一个抽象的java类“BaseOperation”。此类只有一个抽象方法: BaseOperation的子类必须实现此方法: 这是将所有常见的“操作”逻辑放在类中的好方法,但仍然让每个具体子类的方法都有不同的返回类型。 现在我需要更改此结构以允许执行()方法具有可变数量的参数。例如,一个具体的子类需要: 另一个需要: 这很棘手,因为execute方法是在基类中声明的。简单地重载基中的execu

  • 如果指针类型作为函数参数,修改形参会影响实参 不能将函数内的指向局部变量的指针作为返回值,函数结束指向空间会被释放 可以将函数内的局部变量作为返回值,本质是拷贝一份

  • 2. 指针类型的参数和返回值 首先看以下程序: 例 23.1. 指针参数和返回值 #include <stdio.h> int *swap(int *px, int *py) { int temp; temp = *px; *px = *py; *py = temp; return px; } int main(void) { int i = 10, j = 20; int *p