julialang 模块使用的迷惑
2020-11-30 本文已影响0人
昵称违法
一、一个模块中的global变量,它是不是能被外面直接访问,如何修改一个模块中变量的值?
测试代码
#模块测试
module A
global a = 123
function set_a(value)
global a = value
end
end #module A
a
A.a
A.set_a(789)
A.a
A.a = 456
测试结果
模块的global值结论:
1、在不使用using,import,以及包名的情况下,无法访问包中的变量。
二、使用export关键字,可以把包中的方法和变量暴露出来,不需要包名,即可直接访问?
image.png包中的变量a,在包外直接用a来访问,需要设置在包里export a,包外需要using该包 或者 impor该t包
image.png你依旧不能直接修改包A中暴露出来的变量a,请用set_a()来修改
测试代码
**模块测试**
module A
export set_a,a
global a = 123
function set_a(value)
global a = value
end
end #module A
using .A
a
set_a(456)
a
a = 666
测试结果