现在的位置: 首页 > 综合 > 正文

关于 Visual Studio 默认创建的不是公共类

2012年07月24日 ⁄ 综合 ⁄ 共 879字 ⁄ 字号 评论关闭

我们在使用 Visual Studio 2005/2008/2010 的时候,创建的class默认不是public的,这点大家可能都注意到了,可能有些同学甚至和我一样都有点烦恼了。

 

带着这个疑问上网搜索了一下,在stackoverflow.com上搜到一个帖子(英文原贴),分析的还不错,说默认的类为内部类(internal)是有很多好处的,可以把大部分的功能实现都隐藏在assembly内部,而只把想要公开的类/接口提供给用户。如果你真觉得烦恼,帖子还给出了把默认类创建为public的方法,说是ReSharper就可以,也可以直接修改 Visual Studio 的类模板,模板文件位置在 %ProgramFiles%\Microsoft Visual Studio 8\Common7 IDE\ItemTemplates\CSharp\1033\Class.zip。

 

经本人测试,直接修改此zip文件无效,也可能是由于本人是在 Visual Studio 2008 环境测试的,而此方法只适用于 Visual Studio 2005,反正是修改了 %ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class.zip 这个压缩文件中的Class.cs文件的内容,没有任何效果。最后发现 %ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE\ 下面有个 ItemTemplatesCache 文件夹,抱着试试看的想法,修改了 %ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplatesCache\CSharp\Code\1033\Class.zip\Class.cs 文件的内容,在 class 前添加了 public ,保存,重新启动 Visual Studio 2008,创建一个类,OK了!

 

最后声明此法不是正统套路(本人亦不是正统程序员),不太建议使用,仅供参考。

 

抱歉!评论已关闭.