这里的“生成”指的是为特定选定的(一组)变量自动生成所需的代码。
但是,任何关于良好实践的更明确的解释或评论都是受欢迎的。
这里的“生成”指的是为特定选定的(一组)变量自动生成所需的代码。
但是,任何关于良好实践的更明确的解释或评论都是受欢迎的。
当前回答
你说的生成是指自动生成吗?如果你不是这个意思
Visual Studio 2008有一个最简单的实现:
public PropertyType PropertyName { get; set; }
在后台,这将创建一个隐含的实例变量,您的属性将存储和检索到该变量。
然而,如果你想在你的属性中放入更多的逻辑,你必须有一个实例变量:
private PropertyType _property;
public PropertyType PropertyName
{
get
{
//logic here
return _property;
}
set
{
//logic here
_property = value;
}
}
以前版本的Visual Studio也总是使用这种手工方法。
其他回答
如果使用Visual Studio 2005及更高版本,可以使用insert snippet命令快速创建setter/getter。
右键单击代码,单击“插入代码段”(Ctrl+K,X),然后从列表中选择“道具”。
而不是使用Ctrl + K, X,你也可以只输入prop,然后按Tab两次。
我个人使用CTRL+。然后选择- “封装菲尔德斯”。 这是这个选项的缩写-(我们如何在Visual Studio中生成getter和setter ?)
我标记了自动选择重构的缩写(CTRL+。)
Visual Studio还有一个特性,可以从私有变量生成属性。
如果您右键单击一个变量,在弹出的上下文菜单中,单击“重构”项,然后选择封装字段....这将为变量创建一个getter/setter属性。
我不太喜欢这种技术,因为如果你必须创建很多getter /setter,它使用起来有点尴尬,它把属性直接放在私有字段的下面,这让我很恼火,因为我通常把所有的私有字段分组在一起,这个Visual Studio功能破坏了我的类的格式。
除了“prop”片段和auto-properties,还有一个refactor选项可以让你选择一个现有的字段并通过属性公开它(右键单击字段→refactor→封装字段…)。
此外,如果您不喜欢“道具”实现,您可以创建自己的片段。此外,像ReSharper这样的第三方重构工具会给你更多的特性,让你更容易创建更高级的代码片段。如果你负担得起,我推荐ReSharper。
http://msdn.microsoft.com/en-us/library/f7d3wz0k (VS.80) . aspx 演示片段“prop”(以及其他内容)使用的视频,3分23秒。