2014-12-04 74 views
-1

我有C#代碼:組等同於C#

if (OldStatus = activityStatus.Complete) or (OldStatus = activityStatus.Cancelled)... 

在Delphi中我會寫

if OldStatus in (Complete, Cancelled) then... 

是否有任何等同於這種使用一組在C#或者我需要按照上面的方法說明每個選項(或使用開關/外殼)。 (對不起,如果問題是基本的;我是C#的新手。)

回答

1

沒有語言功能。你可以按照你所說的「拼寫出來」,或用if/else鏈,開關,使用HashSet<T>等來模擬它 - 正確的答案是特定於案例的,它們在不同情況下都是有效的。

0

如果你正在尋找一個enum價值,而且enum標有[Flags]屬性,那麼你可以使用一個位掩碼,以確定是否需要的值存在 - 正如證明this answer,否則,開關,如果/其他等。適用。