我有一個程序,用戶在其中輸入想要更改的變量的名稱。因此,我們有這樣的:訪問類似符號數組的C#類變量?
string user_input = "age";
而且我有以下類:
class Jim{
public static int age = 10;
public static bool married = false;
public static string name = "John";
}
我現在想打印變量的用戶輸入的值。因此,由於用戶輸入age
我想打印Jim.age
。我怎樣才能將user_input
轉換成讓我訪問課程的東西。我真的想像你在JS中那樣做Jim[input_string]
,但我相信這是可能的。
我會用字典來存儲與Jim
相關的所有變量,但是您不能製作Dictionary
,它的地圖爲<string, bool or int or string>
。
這真的不是你應該解決這個問題的方式。也許是某種綁定。但試圖根據用戶輸入進行反映是非常危險的。 – Magus
您可能需要考慮expando對象的這個http://msdn.microsoft.com/en-us/library/system.dynamic.expandoobject(v=vs.110).aspx – milagvoniduak
switch語句有什麼問題? – Jonesopolis