2013-02-19 30 views
1

確定,所以我有一個問題:/第一關im使用C#。接下來,在你看到C#錯誤和頭痛><(MonoDevelop的version2.8.2於Unity 3D)

public int BaseValue() 
    { 
get{return _basevalue;} 
set{_basevalue value; } 
} 

我的部得到3個錯誤

1)意外的符號'{ '

2)意外的符號'{' 在類,結構或接口成員聲明

3)解析錯誤

並坦率地把它弄糊了 - 所以有誰知道這個問題可能是什麼?


public class BaseStats { 

private int _basevalue; //base value of this stat 
private int _buffvalue; //amount needed to buff the stat 
private int _expToLevel; //amount needed to move to the next level 
private float _LevelModifier; //the modifier applied to the exp needed to raise the skill 


public BaseStats() 
{ 
_basevalue = 0; 
_buffvalue = 0; 
_expToLevel = 100; 
_LevelModifier = 1.1f; 
} 


//Basic Setters and Getters 
public int BaseValue() 
{ 
get{return _basevalue;} 
set{_basevalue value; } 
} 

public int BuffValue() 
{ 
get{return _buffvalue; } 
set{_buffvalue value; } 
} 

public int ExpToLevel() 
{ 
get{return _expToLevel; } 
set{_expToLevel.value; } 
} 

public float LevelModifier() 
{ 
get{return _levelModifier; } 
set{_levelModifier.value; } 
} 

private int CalculateExpToLevel() 
{ 
return (int)(_expToLevel * _levelModifier); 
} 

public void LevelUp() 
{ 
_expToLevel = CalculateExpToLevel(); 
_baseValue++; 
} 

public int AdjustedValue() 
{ 
return _baseValue + _buffValue; 
} 



} 

+1

所有'sets'都是錯誤的。它們應該是:'_basevalue = value;'等等。 – 2013-02-19 02:31:11

回答

4

屬性沒有括號。消除()並修復你想要成爲屬性的setter。消除你打算成爲方法的get/set。

// this is a property 
public int Foo 
{ 
    get { return foo; } 
    set { foo = value; } 
} 

// this is a method 
public decimal Bar() 
{ 
    // do something and return a decimal 
} 

和註釋,爲C#3,如果你的財產是一個簡單的get/set操作,您可以使用自動實現的屬性和消除明確的支持變量。

public int Foo { get; set; } 
+0

謝謝你,絕對有幫助! :d – 2013-02-19 02:44:47