用于轮询属性的最简单的C#代码?
发布时间:2020-12-15 20:02:56 所属栏目:百科 来源:网络整理
导读:我想知道用于轮询属性值的最简单代码,以在其getter中执行代码. 目前我正在使用:instance.property.ToString();,但我宁愿有一些没有可能的副作用或不必要的开销. 解决方法 (我假设你试图避免从简单地将值分配给未使用的变量时得到的警告.) 你可以写一个无操
我想知道用于轮询属性值的最简单代码,以在其getter中执行代码.
目前我正在使用:instance.property.ToString();,但我宁愿有一些没有可能的副作用或不必要的开销. 解决方法
(我假设你试图避免从简单地将值分配给未使用的变量时得到的警告.)
你可以写一个无操作的扩展方法: public static void NoOp<T>(this T value) { // Do nothing. } 然后打电话: instance.SomeProperty.NoOp(); 这不会包装价值或触摸它 – 只需调用getter.这个优于ToString的另一个优点是,如果该值是空引用,则不会发生这种情况. 每种值类型都需要对方法进行一次JIT编译,但这是一个相当小的成本…… (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |