通过第一类的构造函数返回第二个类的对象

时间:2012-02-27 22:38:09

标签: oop matlab

我有一个节点类和一个树类。我已经定义了节点类以包含节点声明所需的属性,并且树类用于从节点形成树结构。虽然树结构是从节点形成的,但我在返回节点对象时遇到了问题。我的代码结构是:

classdef Node
properties 
    node_center;
    node_size;
end
methods
   function this = Node(center,size)
       this.node_center = center;
       this.node_size = size;
   end
end
end % end of class Node
classdef Tree < handle
methods
   function n = Tree(points,objects_in_tree)
      n = Node(center_of_points,size);
      n = insert_child(n,center,sizez);
   end
end

现在我得到的错误是: 构造类'Tree'的实例时,构造函数必须保留返回对象的类。 我知道为什么会发生这种情况的原因,但我想知道解决方法。感谢。

1 个答案:

答案 0 :(得分:0)

构造函数的返回值必须是创建的对象 - 没有办法解决它。您可以创建另一个函数来返回您想要从中获取的其他值(如Node)。构造树之后,调用该对象上的访问器函数。