我想知道为什么 resharper 建议在非静态类中使用静态方法?
是为了保存实例的创建吗?是性能问题吗?
另外,为什么它建议“const”一些参数?是性能问题吗?
我很想得到一些解释
当编译器遇到静态方法时,它会发出call
指令,但当它遇到实例方法时,它会发出callvirt
操作说明。现在callvirt
指令在调用之前检查对象是否为空。所以它会带来性能损失。但它有助于使方法调用多态。
因此,如果该方法与类的任何属性的状态更改无关,建议将该方法设为静态,因为它可以提高性能
关于 const 的使用,它是值的编译时关联,而不是运行时关联。因此 const 的所有变量都被编译时本身的值替换,这显然提高了性能。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)