这是我第一次需要使用泛型和引用,我遇到了困难。我知道这很明显。
public class Program
{
void SWAP<T>(ref T a, ref T b) { T dum = a; a = b; b = dum; }
static void Main(string[] args)
{
double a = 1; double b = 2;
double c = SWAP(a, b);
Console.Write(a.ToString());
Console.Read();
}
}
在调试“SWAP(a, b)”时给出错误:“Program.SWAP(ref double, ref double)”的最佳重载方法有一些无效参数。
非常感谢您提出这些类型的问题, 维克多
最佳答案
当调用一个使用 ref 值的函数时,你需要告诉编译器取一个 ref。此外,您的 SWAP 不会返回值。
所以交换线应该是
SWAP(ref a, ref b);
关于c# - Newbie Q 关于使用引用和泛型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2338361/