C#可以将调用方法的对象保存到另一个对象作为参考节点

时间:2017-08-28 22:23:14

标签: c# class variable-assignment

在问题标题上有问题,但我认为这总结了一下。

我想做的是:

对象1有一个方法,可以将一个子对象添加到数组中;对象2通过方法的参数传递;然后,我希望对象2在添加时自动将对象1分配给它的父引用节点。

这是一个例子:

    Room1 = new Area(10, 10, "Anthony's House");
    R1_LivingRoom = new SubArea(5, 5, "Living ROom");
    int[] loc = new int[2] {10,10 };
    Room1.setSubArea(loc, R1_LivingRoom);
    R1_LivingRoom.Parent = Room1;

我想要一种跟踪层次结构的方法,而不需要像本例中那样自己分配。如果出现这样的话会很好:

    Room1.setSubArea(loc, R1_LivingRoom);

自动执行:

      R1_LivingRoom.Parent = Room1;

被添加到Room1。

我是唯一可行的方式吗?要直接分配它还是通过各种参数传递Room1?或者有没有办法让它通过setSubArea添加到哪里,它可以引用调用对象Room1并自动将其分配给父对象?

谢谢,

1 个答案:

答案 0 :(得分:2)

这应该有效:

public class Room
{
   public void setSubArea(int[] loc, SubArea room)
   {
       //some code
       room.Parent = this;
   }
}