假设我们有这样一个值类型,其中字段是
此外,假设我们有一个帮助类,可以让我们以可重用的方式实现复合类型的
readonly
并在构造过程中初始化:public struct SomeValue
{
private readonly Int32 field1;
private readonly Int32 field2;
...
}
此外,假设我们有一个帮助类,可以让我们以可重用的方式实现复合类型的
GetHashCode()
方法:public struct SomeValue
{
...
public override Int32 GetHashCode()
{
return HashHelpers.GetHashCode(this.field1, this.field2);
}
}
现在,编译器必须意识到在类型构造后,由于它们是readonly
,字段值永远不会改变。因此,在SomeValue.GetHashCode()
被JIT时,调用HashHelpers.GetHashCode()
是否有可能被内联呢?