• 【C#】让ReSharper灰色显示未使用的非私有成员的关键


    环境:VS2010+ReSharper8

    先说答案:

    1、在Inspection Severity中设置Non-private accessibility为Warning。如图:

    该页面在ReSharper菜单→Options中。贴士:选项是可以搜索的,搜索框在选项区上方

    2、启用Solution Wide Analysis(SWA)。启用方法有几种:

    - 双击VS最右下角落的圆点,或右击圆点→Analyze Errors in Solution。如图:

    - 菜单ReSharper→Options→Code Inspection→Settings→Analyze errors in whole solution,勾上它。如图:

    启用该功能会弹提示,说会降低VS性能,占用更多内存啥的,Ok即可。但如果项目不小或机器太烂,确实要慎重。我的理解,启用后,RS会在整个解决方案范围内检查成员使用情况,你想想,一个Solution那么多Project,那么多class member,每一个都要检查,着实不是个轻量简便的活。另外提个醒,这功能也就在当前Solution范围内检查,对于有些很公用的类成员,它不在这个方案里使用,但可能在其它方案里用到,所以也别见到灰色成员就剔~反正大家都懂的,是我啰嗦。

    下面开始叽歪:

    发现这问题是因为,一直以来都知道对于无任何使用的私有成员,ReSharper是会把它显示为灰色的,对于我这种轻度代码洁癖患者来说,这功能很好,但非私有成员就不会灰显,在选项中也找到了Non-private accessibility,但设为Warning也没用,网上搜半天也搜不到说这问题的,搞的我还以为是RS的bug,专程上书RS feedback,人支持攻城狮很好,很快就给了我回信,看名字还是个雌的。但一开始她也没说到重点,说让我重新建个项目/解决方案啥的看看,后来又让我把RS配置导给她……反正来来回回沟通了若干封Email,可苦了我那蹩脚的english,在此感谢my friend - MS的MVP Alexis(这哥活跃在MS支持社区),以及感谢金山词霸~不用感谢国家了吧,他/它们在翻译上给了我很大帮助,不然光凭我很难完成这次求助。

    后来甚至成功勾引到对方给我远程协助~关于远程工具的选用还有个题外,一开始我说我用的是一款叫QQ的IM,这工具有简单的远程协助功能,看您方便不……并且附上QQ国际版的官网给她~尼玛无意中还帮TX推广了下,后来她说要不用TeamViewer吧,看来这QQ在她们那儿还是不受待见呐。后来约好时间,我开好TV,告诉她ID和PWD,她远程过来,我演示了下“问题”给她看,然后她又把RS配置导了一遍,说带回去研究研究,有消息通知我,就闪人了。

    过了天把她回信了,这次说到重点了,就说了下这个SWA的意义,让我启用看看,果然问题解决了,然后我对她千恩万谢,然后就没然后了。我估计她也是请教了其它人,才戳中了问题的关键。

    Anyway,以后总算可以清晰明了的剔除无用的私有和非私有成员了,再次感谢RS,感谢Alexis,感谢金山词霸。

    - 文毕 -

  • 相关阅读:
    Palindrome Partitioning
    Minimum Path Sum
    Maximum Depth of Binary Tree
    Minimum Depth of Binary Tree
    Unique Binary Search Trees II
    Unique Binary Search Trees
    Merge Intervals
    Merge Sorted Array
    Unique Paths II
    C++ Primer Plus 笔记第九章
  • 原文地址:https://www.cnblogs.com/ahdung/p/3913279.html
Copyright © 2020-2023  润新知