[英]generic xor swap in c# for different types
我正在嘗試制作一個函數,該函數可以使用xor方法交換c#中的任何2個變量,無論它們是引用類型還是值類型。 為此可以正常工作嗎?
public static void QuickSwap<T>(ref T a, ref T b)
{
if (ReferenceEquals(a, b) || (typeof(T).IsValueType && a == b))
return;
a ^= b;
b ^= a;
a ^= b;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.