C# - 引用"这个int"参数

时间:2016-08-16 12:31:39

标签: c# int bit-manipulation this ref



我有非常简单的Bitwise Operator方法,我想这样使用:

myInt.SetBit(int k, bool set)

这样它就会改变索引处的位数' k'价值'设置' (0或1)我首先想到这样做:

public static void SetBit(this int A, int k, bool set) { 
    if (set) A |= 1 << k; 
    else A &= ~(1 << k); 
}

但当然这只会改变变量&#39; A&#39;的内部值,而不是原始变量,因为整数不是引用类型。
我无法使用&#39; ref&#39;以及“这个&#39;所以我不知道如何把它变成参考参数 我已经有类似Int数组的方法,但这些方法工作正常,因为数组是引用类型。

我正在寻找一种方法来为单个整数保留这个方便的语法(如果有的话)。

1 个答案:

答案 0 :(得分:0)

我不得不检查这个,因为它看起来有点奇怪。果然 - 您无法使用ref编写扩展方法。

See here,其他人试过这个。