0
我希望能夠創建一個我可以叫喜歡在我的遊戲靜態類,所以我可以移動精靈的方法。例如:如何創建一個可以像靜態類一樣訪問的方法?
代碼
functions.move(Vector2Position)
的問題是,我不能在靜態方法中使用實例構造函數。有沒有辦法做到這一點,還是我需要做別的事情?
編輯:
我需要能夠調用這個當前類之外。
我希望能夠創建一個我可以叫喜歡在我的遊戲靜態類,所以我可以移動精靈的方法。例如:如何創建一個可以像靜態類一樣訪問的方法?
代碼
functions.move(Vector2Position)
的問題是,我不能在靜態方法中使用實例構造函數。有沒有辦法做到這一點,還是我需要做別的事情?
編輯:
我需要能夠調用這個當前類之外。
看一看Static Constructors和Static Classes MSDN上。總之:
可以聲明使用「靜態」關鍵字的靜態類。這表明一個類不能被實例化。請注意,靜態方法也可以存在於普通類中,而不僅僅是標記爲「靜態」的。
// Static constructor
static MyClass()
{
value = 1;
}
你會再調用與下面的代碼的方法:
static class MyClass
{
private static int value;
public static int GetValue() { return value; }
}
,如果您需要初始化類以任何方式你可以有一個靜態構造函數。這可以在任何地方完成 - 在任何其他靜態或實例方法中。
int someValueSomewhere = MyClass.GetValue();
你是什麼意思「我不能在靜態方法中使用實例構造函數」?你可以在靜態方法中使用構造函數(它是實例即將成爲的成員)。 – 2012-01-13 04:41:45
也許你的意思是你不能在靜態方法中使用實例方法?這很正常,因爲靜態方法存在於對象實例的範圍之外。 – 2012-01-13 04:45:31