无法在Julia

时间:2017-03-29 21:59:42

标签: julia

我刚开始使用Julia并定义了一个模块如下:

MyModule.jl

module MyModule
export ConcreteClass
end

然后我有一个文件定义了一些简单的抽象类:

generics.jl

abstract MyAbstract

在此之后我尝试继承这个类:

concrete.jl

type ConcreteClass <: MyAbstract

end

当然,这是微不足道的,但我只是希望能够实例化一个简单的例子。我将项目源的路径添加到LOAD_PATH变量,并在我的julia控制台中运行以下内容:

using MyModule   # No error
r = ConcreteClass()

第二行失败:ERROR: UndefVarError: ConcreteClass not defined。当我输入自动填充的第二行时,Julia控制台中的内容会建议ConcreteClass,因此识别出类型但不确定not defined错误的原因。

1 个答案:

答案 0 :(得分:2)

我想我明白了。我遗漏了一些似乎有必要的include陈述。

<强> MyModule.jl

module MyModule
export ConcreteClass
include("concrete.jl")
end

<强> concrete.jl

include("generics.jl")
type ConcreteClass <: MyAbstract

end

添加以下行后:

r = ConcreteClass()  # works fine