我创建了一个新的类文件,默认情况下Visual Studio不公开。 我能改变一下吗?
答案 0 :(得分:11)
默认情况下,没有访问说明符的类是内部的,成员默认为private。这样可以尽可能地限制可见性,从而增加封装。
在没有考虑的情况下公开新课程打破了封装的整个想法。
可以在此zip文件中找到VS用于创建新类的类模板(如果是CSharp):
C:\ Program Files \ Microsoft Visual Studio 8 \ Common7 \ IDE \ ItemTemplates \ CSharp \ 1033 \ Class.zip或 使用VS Orcas时C:\ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ ItemTemplates \ CSharp \ Code \ 1033
打开zip文件,添加public关键字,保存并完成。每次添加课程时都会公开。希望这会有所帮助。
答案 1 :(得分:1)
默认代码模板还有其他问题 - 例如,它们不能与开箱即用的StyleCop兼容,因为“using”行在命名空间声明之外。
您可以使用ReSharper从模板创建类文件,允许您将所需的任何代码放入模板中。这就是我所做的:)
答案 2 :(得分:-1)
我听到过有关此事的投诉,我认为这不是一个可以改变的选择。
答案 3 :(得分:-1)
你的意思是这个班级本身在其他班级中不可用吗?或者你的意思是文件的所有内容都默认为私人访问?
如果您希望该类在其他类中可见,您只需要确保命名空间在另一个类中可见(在c#中使用“using”关键字,或者只是将它们放在同一名称空间中)。
不知道你在说什么语言,但在c#中所有方法,成员变量,属性等都默认为private。如果您希望它们是公开的,您需要为每个成员单独指定。我认为不可能在c#中改变这种行为。
答案 4 :(得分:-1)
我不认为您可以在VS中更改选项,以便默认情况下创建的所有类都是公共的(但我会调查它。)
我认为,除非您非常具体地需要将所有类声明为公共(并且我不能想到),否则应该保留默认值。这使您可以确定哪些类是公开的,哪些类应保留在内部。在我看来,一个好的设计选项会规定默认情况下类被声明为“内部”。