Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 无法在此作用域中声明,因为该名称在封闭的本地作用域中使用_C#_Unity3d - Fatal编程技术网

C# 无法在此作用域中声明,因为该名称在封闭的本地作用域中使用

C# 无法在此作用域中声明,因为该名称在封闭的本地作用域中使用,c#,unity3d,C#,Unity3d,我希望能够实例化一个对象,然后给它的所有子对象一个脚本 public void buildTownHall() { GameObject TownHallBuilding = Instantiate(townhall, pos, Quaternion.Euler(new Vector3(0, 0, 0))); foreach (Transform TownHallBuilding in transform) { TownHallBui

我希望能够实例化一个对象,然后给它的所有子对象一个脚本

     public void buildTownHall()
 {
     GameObject TownHallBuilding = Instantiate(townhall, pos, Quaternion.Euler(new Vector3(0, 0, 0)));

     foreach (Transform TownHallBuilding in transform)
     {
         TownHallBuilding.gameObject.AddComponent<ChangeColorChild>();
     }

     TownHallBuilding.AddComponent<ChangeColor>();
     TownHallBuilding.SetActive(true);
 }
public void building townhall()
{
GameObject TownHallBuilding=实例化(townhall,pos,Quaternion.Euler(新向量3(0,0,0));
foreach(在变换中变换市政厅建筑)
{
TownHallBuilding.gameObject.AddComponent();
}
TownHallBuilding.AddComponent();
Townhall Building.SetActive(真);
}
但我一直收到标题中的错误信息

GameObject TownHallBuilding = Instantiate(... // TownHallBuilding #1
foreach (Transform TownHallBuilding in transform) // TownHallBuilding  #2 
你不能两者兼得

顺便说一句,局部变量通常以普通字母开头(不是大写)

也许foreach应该是:

foreach (Transform t in transform)
{
   // Use t
}

你有
TownHallBuilding
作为
GameObject
Transform
@LarsTech我会改变什么,我会假设它是这个foreach(GameObject TownHallBuilding in Transform){TownHallBuilding.GameObject.AddComponent();}但是,它仍然有相同的errorMessage,意思与它所说的完全相同。不能在同一范围内声明两个名称相同的不同事物。请参阅副本。