在swift中,只需调用变量.toggle()
即可切换Boolean
.
var isVisible = false
isVisible.toggle() // true
我想在C#中创建相同的功能,所以我在"bool"上编写了一个扩展方法
public static class Utilities {
public static void Toggle(this bool variable) {
variable = !variable;
//bool temp = variable;
//variable = !temp;
}
}
然而,它不起作用,我怀疑这与C中的bool
是值类型有关,因为它们是swift中的引用类型.
有没有办法在C中实现相同的切换函数?