WIen我创建一个新的类文件,Visual Studio默认情况下不会公开它。 我可以改变这个吗?为什么我的类默认在Visual Studio中是私有的?
回答
我听说过这方面的投诉,我不相信这是一个可以改变的选项。
你是说这个类本身在其他类中不可用?或者你的意思是文件的所有内容默认为私人访问?
如果您希望该类在其他类中可见,则只需确保该名称空间在其他类中可见(在c#中使用“using”关键字,或者只将它们放在相同的名称空间中) 。
不知道你在说什么语言,但在c#中的所有方法,成员变量,属性等默认为私有。如果你想让他们公开,你需要为每个成员单独指定。我不认为有可能在c#中改变这种行为。
默认代码模板还有其他问题 - 例如,它们不符合开箱即用的StyleCop,因为“using”行在命名空间声明之外。
您可以使用ReSharper从模板创建您的类文件,允许您将所需的任何代码放入模板中。这就是我所做的:)
默认情况下,没有访问说明符的类是内部的,而成员默认为私有。这样可以尽可能地限制可视性,从而增加封装。
在没有考虑的情况下创建一个新的类,破坏了封装的整个想法。
该VS用来创建一个新的类的类模板可以在这个zip文件中找到(在CSHARP的情况下):
C:\ Program Files文件\微软的Visual Studio 8 \ Common7 \ IDE \的ItemTemplate \使用VS Orcas时使用CSharp \ 1033 \ Class.zip或 C:\ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ ItemTemplates \ CSharp \ Code \ 1033
打开zip文件,添加public关键字,保存它和你完成了。每次添加课程时都会公开。希望这可以帮助。
Doh!你太快了! – 2009-05-27 03:57:02
我不认为,这样创建的所有类都默认公众可以更改VS的一个选项(但我会考虑它。)
我认为,除非该你有一个非常明确的需求,所有的类都被公开(我想不出)你应该保持默认状态。这使您可以决定哪些类是公开的,哪些应该保持内部的。在我看来,一个好的设计选项将决定这些类在默认情况下被声明为“内部”。
- 1. 我应该加载Visual Studio IDE的默认语言是什么?
- 2. VS.NET默认为私有类
- 3. 什么是Visual Studio 2013中的默认字体
- 4. 什么是Visual Studio中项目的最佳默认位置?
- 5. 什么是默认使用的GUI框架visual studio?
- 6. 为什么PHP私有类var不是私有的?
- 7. 为什么Visual Studio 2010将.NET Framework 4.0 Client Profile作为默认项目类型?
- 8. 默认ASPX在Visual Studio 2012
- 9. 为什么visual studio默认不会使用Resources模板?
- 10. Visual Studio - 为什么默认关闭行号?
- 11. 的默认方法是私有的吗?
- 12. 什么是Visual Studio 2010中的所有不同文件类型的默认选项卡设置?
- 13. C++(Visual Studio 6)中operator <和operator []的默认返回值是什么?
- 14. Visual Studio中静态成员函数的默认调用约定是什么?
- 15. 为什么UIBarButtonItem默认是禁用的?
- 16. mousedown的默认行为是什么?
- 17. Java - 私有成员vs私有内部类的默认成员
- 18. Visual Studio 2010中的默认语言
- 19. 什么是默认的TransformerFactory?
- 20. 什么是默认的MaxPoolSize?
- 21. 在Visual Studio中更改默认字体
- 22. 为什么Visual Studio认为js文件是一个cs文件?
- 23. 为什么我在kubernetes上没有默认的serviceAccount?
- 24. 什么是“self.default =默认,如果默认其他类型()”是什么意思?
- 25. 为什么我没有命名空间在Visual Studio中/ XAML
- 26. 为什么这个类的声明不是Visual Studio的工作
- 27. 为什么我的向量<int>不是默认为0?
- 28. 为什么Visual Studio会为您提供Page_Load for WebForms作为默认值?
- 29. 为什么Reduux在Redux中默认称为默认值?
- 30. 在VB6中,变量的默认类型是什么?
这似乎是http://stackoverflow.com/questions/39903/vs-net-defaults-to-private-class的确切副本,该问题也有一个可接受的答案。 – 2009-06-30 16:41:24