繁体   English   中英

内置的FxCop规则可避免不必要的装箱和拆箱

[英]Built-in FxCop rule for avoiding unnecessary Boxing and Unboxing

是否有内置的FxCop规则可以分析不必要的装箱/拆箱?

下面的示例显示违反规则的方法WeaklyTyped和满足规则的方法StronglyTyped。

using System;

namespace PerformanceLibrary
{
    public interface IWork
    {
       object DoWork();
    } 

    public class Work : IWork
    {
       object IWork.DoWork()
       {
           return 3;
       }

       public int DoWork()
       {
           return 3;
       }
    }

    public class NeedsWork
    {
        public void WeaklyTyped()
        {
            IWork iwork = new Work();
            // The following call violates the rule.
            int x = (int)iwork.DoWork();
        }

        public void StronglyTyped()
        {
            Work work = new Work();
            int x = work.DoWork();
        }
    }
} 

过去有一个规则,但是在当前的FxCop版本中不再存在。

您可以使用BoxCop工具,但是它不能很好地集成到构建过程中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM