這個問題在這里已經有了答案: 如何使用名為“object”的變數名? (5 個回答) 13 小時前關閉。
我知道這應該不是什么大問題,但由于某種原因,我的 Unity 專案中的 Foreach 回圈無法編譯。據我所知,它完全符合語法,但 Unity 在編譯時會拋出 10 個語法錯誤。我嘗試重新啟動 Unity 和我的計算機,但問題仍然存在。我已經注釋掉了回圈并且代碼編譯得很好,所以我知道這就是導致問題的原因。
這是完整的方法:
List<GameObject> GetTargets()
{
List<GameObject> targets = new List<GameObject>();
GameObject[] potential_targets;
potential_targets = GameObject.FindGameObjectsWithTag("Enemy Object");
foreach (GameObject object in potential_targets)
{
if (Vector2.Distance(transform.position, object.transform.position) <= firingRangeDistance)
{
targets.Add(object);
}
}
return targets;
}
知道問題可能是什么嗎?
uj5u.com熱心網友回復:
我認為問題可能object
是 c# 的關鍵字,您可以嘗試使用 @ 轉義關鍵字,否則使用其他名稱代替object
foreach (GameObject @object in potential_targets)
{
if (Vector2.Distance(transform.position, @object.transform.position) <= firingRangeDistance)
{
targets.Add(@object);
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/470021.html
下一篇:在方法之間參考變數