![](/img/trans.png)
[英]Inheritance Variable Questions (Changing inherited variables) in Unity (C#)
[英]C# variable questions
我正在使用 C# 開發一個項目,該項目需要運行基於用戶輸入的方法。 用戶可以在文本框中輸入整數或字符串。 是否有可能創建一個未聲明的變量,如果沒有,我該如何為用戶輸入使用正確的方法? 我計划創建兩個重載方法。
您可以使用object
作為參數的類型,然后使用.GetType()
或is
執行類型檢查。 還有其他替代方法,例如dynamic
但是當您需要對對象執行方法調用而不必將其強制轉換為實際類型時,使用dynamic
更為常見
無論如何,如果您從控制台讀取,它將始終是一個字符串,因此您可以int.TryParse()
。
public void DoStuff(string param)
{
int chosen;
if(int.TryParse(param, out chosen)
{
// is an int do stuff with chosen
}
else
{
// it's not do stuff with param
}
}
用戶可以在文本框中輸入整數或字符串。
對我來說似乎很簡單。 您可以通過 Text 屬性從文本框中獲取輸入,該屬性始終是一個字符串。 因此,您需要檢查輸入是否可以使用 TryParse 解析為整數。 我個人不明白為什么需要重載方法。 除了參數的類型外,方法是否相同? 如果不是,我不會選擇重載,而是選擇具有明確命名的不同的重載。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.