自动实现的属性可以有私有集吗?

cho*_*bo2 5 c#

我试着这样做:

public int Property {get; private set;}
Run Code Online (Sandbox Code Playgroud)

它强调了"集合",并说:

自动实现的访问器从未设置

它让我编译,但我想知道这是否影响了什么或它的处理是什么?

adr*_*nks 11

你拥有的是有效的语法.您收到警告,因为没有任何设置属性的值(即,没有在任何地方使用setter).

如果没有使用setter,那么该属性将始终具有其默认值,在这种情况下,您应该首先询问具有该属性的值.


Vad*_*dim 5

这只是编译器警告而不是错误。它只是告诉你,你永远不会在类中使用 setter。