假設有一個基類C#我們可以通過類類型作爲參數的功能和存取類變量內部方法
class base
{
int x, y;
}
而3衍生單類A,B,C與X,Y初始化爲一些值。
例如:
class A : base { x = 1; y = 0;}
class B : base { x = 0; y = 1;}
class C : base { x = 1; y = 1;}
有沒有辦法通過類作爲參數傳遞給方法,並訪問類的變量值。 SO,一個可以更新所有3個類的值的函數。
意向:
int call (type classtype)
{
int xvalue = classtype.x;
int yvalue = classtype.y;
}
我已經看到了一些帖子activator.CreateInstance(CLASSTYPE)的 How to pass a Class as parameter for a method? [duplicate]
一提,但它並沒有回答我們如何可以訪問類的變量。
它應該是'INT調用(基地CLASSTYPE)',你會通過實例化對象。 – Legends
*類型*沒有這些變量。 *該類型的實例*具有這些變量,因此具有*類型*不會給你任何變量。 – Servy
請顯示「類別A,B」的代碼 - 非常不清楚您的意思是「類別的變量值」,正如@Servy所說的。如果代碼實際上是C#而不是某種僞語言,則可能是指靜態類字段/屬性*或實例字段/屬性。 –