2012-01-12 64 views
-2

你可以在自動實現的屬性中定義一個get和一個平凡的集合。您可以在屬性中定義一個get和一個trival嗎?

public double TotalPurchases { get {return a*b*c}; set; }

答:它給出了一個錯誤:

...set must declare a body because it is not marked abstract, extern, or partial

+3

當你嘗試了什麼事? – 2012-01-12 19:14:26

+0

'...設置必須聲明一個實體,因爲它沒有被標記爲抽象,外部或部分' – mihajlv 2012-01-12 19:28:49

+2

確切地說編譯器已經給你答案 – 2012-01-12 19:29:56

回答

1

你可以離開設置空括號:

public double TotalPurchases { get {return a*b*c; } set{} } 

public double TotalPurchases { get {return a*b*c; } } 
+0

請注意,這不再是一個自動實現的屬性,並且你不能設置這個屬性就這樣了 – ChrisWue 2012-01-12 19:40:04

6

沒有,C#不允許這樣。自動實現的屬性必須自動實現getter和setter。

這也非常有道理。在你的例子中,二傳手應該做什麼?應該設置哪個字段?

相關問題