G'Day,我是R的新手,我有GOOGLED和阅读书籍,并且有很多游戏,但我似乎无法弄清楚我在做什么是实施的.它编译(没有解释器吐)并且可以调用(再次没有吐),它似乎不想做任何事情.
好.概要.
我读到R中的列表是其他语言的对象.因此,只是为了周六和周日的比赛,我一直试图让它发挥作用.
GLOBAL <- list( counter = 1,
locked = FALSE,
important_value = 42,
copy_of_important_value = 42,
lock = function() { GLOBAL$locked = TRUE },
unlock = function() { GLOBAL$locked = FALSE },
is_locked = function() { return(GLOBAL$locked )},
visit = function() { GLOBAL$counter <- GLOBAL$counter + 1 })
> GLOBAL$locked
[1] FALSE
>
Run Code Online (Sandbox Code Playgroud)
这有效......
> GLOBAL$locked <- TRUE
> GLOBAL$locked
[1] TRUE
>
Run Code Online (Sandbox Code Playgroud)
事实并非如此
> GLOBAL$unlock()
> GLOBAL$locked
[1] TRUE
>
Run Code Online (Sandbox Code Playgroud)
R有$ this或$ self构造?这些都不会产生任何错误.只是似乎不想做任何事情!(功能).我想我可以设置一个函数作为路由访问表,但我认为封装将是漂亮的.
第二个问题.我已多次提到R必须将所有数据保存在内存中,这是一个限制.这包括*NIX系统上的swp吗?我的意思是,如果你有一个humungus矩阵,你可以添加一些交换以使其适合吗?
抱歉愚蠢的新手问题