我可以在不装箱的情况下执行可为 null 的结构相等性测试吗?
Can I perform a nullable struct equality test without boxing?
我有一个struct Foo : IEquatable<Foo>
。我正在尝试写:
bool isEqual = a.Equals(b);
其中 a
和 b
都是 Foo?
类型。此代码有效,但 b
被装箱了!有没有办法避免拳击?
您可以调用静态Nullable.Equals
方法:
bool isEqual = Nullable.Equals(a, b);
我有一个struct Foo : IEquatable<Foo>
。我正在尝试写:
bool isEqual = a.Equals(b);
其中 a
和 b
都是 Foo?
类型。此代码有效,但 b
被装箱了!有没有办法避免拳击?
您可以调用静态Nullable.Equals
方法:
bool isEqual = Nullable.Equals(a, b);