我是一個新手程序員,非常抱歉,如果這是一個非常愚蠢的問題。我需要將一個類的值傳遞給另一個類。如果我沒有弄錯,這將通過繼承來完成,但似乎有一些我錯過了。任何幫助將受到歡迎。我正在Unity中編寫C#。繼承 - 需要指導
public class baseStats{
private int STAMINA;
public static int Stamina{
get{return STAMINA;}
set{STAMINA = value;}
}
}
以上是我的父類的示例。這裏是我的子類:
public class Profile : baseStats {
private static int PROFILE_STAMINA;
private void Stats()
{
PROFILE_STAMINA = Stamina;
}
public static int profileStamina
{
get{return PROFILE_STAMINA;}
}
}
在我調試的目的,創造了第三個腳本,我寫道:
public class debug:MonoBehaviour{
void Start(){
Debug.Log(Profile.profileStamina.ToString());
}
}
它說我需要非靜態字段,方法的對象引用,或屬性 'Profile.Profile.Stamina'。簡單的解決方法:讓所有的東西都是靜態的(我相信我需要製作構造函數或類似的東西,以避免不得不一直使用靜態,有一點幫助會很棒!)。一旦沒有錯誤,我運行程序,控制檯爲我的個人資料耐力輸出0。至於發生了什麼,我感到非常困惑。對不起,這是一個很長的帖子,並感謝我得到的任何幫助。
第三個腳本中的'profileStamina'如何定義?請更新您的代碼。只需提供完整的第三個腳本,就像你爲別人做的一樣。 – Programmer
這是完整的腳本。 http://imgur.com/tasBn6r –
你在圖片中有'Profile.profileStamina'。爲什麼不更新你的問題。只需將您的代碼直接從您的IDE複製到SO就可以避免不必要的問題。另外,您的'Profile'腳本不包含在問題中。我不知道沒有這些,人們可以如何提供幫助。請確保此處的其他代碼與您IDE中的代碼相同。 – Programmer