Object Julia中的内构造函数

Object Julia中的内构造函数,object,struct,julia,Object,Struct,Julia,我正在从使用Python转向Julia,并希望创建如下对象: class myObject(): def __init__(inputA,inputB): self.x = inputA; self.y = inputB; self.z = x*y; 我知道在Julia中,我们使用了struct,但我不确定如何在不手动设置z的情况下(在内部构造函数之外)实现上述功能。我将如何执行此操作?您可以作为内部构造函数执行此操作: struct A x::Int

我正在从使用Python转向Julia,并希望创建如下对象:

class myObject():
  def __init__(inputA,inputB):
    self.x = inputA;
    self.y = inputB;
    self.z = x*y;

我知道在Julia中,我们使用了
struct
,但我不确定如何在不手动设置
z
的情况下(在内部构造函数之外)实现上述功能。我将如何执行此操作?

您可以作为内部构造函数执行此操作:

struct A
    x::Int
    y::Int
    z::Int
    # Inner constructor
    A(x, y) = new(x, y, x*y)
end
struct B
    x::Int
    y::Int
    z::Int
end
# Outer constructor
B(x, y) = B(x, y, x*y)
或外部构造函数:

struct A
    x::Int
    y::Int
    z::Int
    # Inner constructor
    A(x, y) = new(x, y, x*y)
end
struct B
    x::Int
    y::Int
    z::Int
end
# Outer constructor
B(x, y) = B(x, y, x*y)

所有内容都应该包含在本手册中。

哈,太简单了,谢谢。我能用不同数量的输入创建构造函数吗?