首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法初始化C#中的自动属性

无法初始化C#中的自动属性
EN

Stack Overflow用户
提问于 2010-04-06 22:21:42
回答 2查看 358关注 0票数 2

我有一个自动属性

public int GearCount { get;set;}

当我尝试像这样初始化它时-

串联t=新串联(GearCount= 5);

它会给出如下错误

名称'GearCount‘在当前上下文中不存在

这是怎么回事?同样,如果我做正常的音调,它也会工作得很好。Tandem t= new Tandem();

EN

回答 2

Stack Overflow用户

发布于 2010-04-06 22:26:06

您已声明的属性与您试图在初始值设定项中设置的属性的名称或类型不同。此外,当您想要使用初始化器时,需要使用大括号而不是圆括号:

代码语言:javascript
复制
var t = new Tandem{ HasToolKit = true };
票数 2
EN

Stack Overflow用户

发布于 2010-04-06 22:24:17

这是因为属性名为HasToolKit,类型为bool,而不是名为GearCount且类型为int的属性。

为此,您似乎还混合了构造函数和属性初始值设定项语法。在调用用例中,您需要的是:

代码语言:javascript
复制
Tandem t = new Tandem {GearCount = 5};

Tandem的定义需要有这样的东西:

代码语言:javascript
复制
public int GearCount { get; set; }

不太确定HasToolKit在整个方案中意味着什么。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2585495

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档