在数组排序中,如果数组元素是引用类型变量,就不能按照值类型那样通过定义一个中间变量来直接实现两个数组元素的交换。参考C++中类似的情况,要交换两个引用类型变量的值,在自定义交换函数时,通过传入指针变量的参数来实现这个功能。类似的,在C#中也可通过使用ref来实现。代码如下:
void Swap
(ref T var1,ref T var2)
{
T tmp=var1;
var1=var2;
var2=tmp;
}
在数组排序中,如果数组元素是引用类型变量,就不能按照值类型那样通过定义一个中间变量来直接实现两个数组元素的交换。参考C++中类似的情况,要交换两个引用类型变量的值,在自定义交换函数时,通过传入指针变量的参数来实现这个功能。类似的,在C#中也可通过使用ref来实现。代码如下:
void Swap
(ref T var1,ref T var2)
{
T tmp=var1;
var1=var2;
var2=tmp;
}