对于人们来说,这可能是一个简单的问题,但我不明白为什么会这样.这是我的代码第1条:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GameCore
{
public class PlayerCharacter
{
public void Hit(int damage)
{
Health -= damage;
if (Health <= 0)
{
IsDead = true;
}
}
public int Health { get; private set; } = 100;
public bool IsDead{ get; private set; }
}
}
Run Code Online (Sandbox Code Playgroud)
现在Visual Studio在赋值符号(=)上给出了无效的令牌错误(根据标题),我看不出原因.有谁可以解释这个吗?
我要做的是将生命的int设置为100,每次角色受到伤害时,生命值会降低.谢谢大家.
我正在使用Visual Studio 2013 v12.0.40629.00更新5
Him*_*ere 11
为自动实现的属性设置默认值仅适用于C#-version 6及更高版本.在版本6之前,您必须使用构造函数并在其中设置default-value:
public class PlayerCharacter {
public int Health { get; private set; }
public PlayerCharacter()
{
this.Health = 100;
}
}
Run Code Online (Sandbox Code Playgroud)
要为VS2013启用编译器,您可以使用此方法.