public class myWorld
{
public int data;
public void ChangeData()
{
data = 10;
}
}
public class myRobot : myWorld
{
public void robotChangesData()
{
//how can i make the robot change the data in world?
}
}
私は(多かれ少なかれ)これをこのように行うべきではないことを理解しており、すべての変更はメソッドを使用する必要があるため、何千回も尋ねられています-しかし:
世界とロボットの例にとどまる場合、後でロボット用のメソッドが必要になります:robot.MoveBox(25)
ロボットが世界、オブジェクト ボックスにアクセスし、描画オブジェクト (メッシュ、形状など) を更新する必要がある場合.) 私が今思いつくことができる唯一のことは、ロボットのすべてのメソッド ( movebox
、または などrobotChangesData
) に全世界 + ボックス + 描画要素を 'ref' として渡すことであり、彼はそれを変更できます..しかし、すべてメソッドは次のようになりますrobot.MoveBox(25, ref myworldObject, ref myworldBoxes,ref etc etc)
これは本当に正しい方法ですか?または私は何か重要なことを逃しましたか?