【发布时间】:2011-11-11 18:46:07
【问题描述】:
在回答了tracememrecently之后,我了解了retracemem。 ?retracemem 的帮助和其中的例子让我没有开悟。
retracemem 实际上做了什么,为什么?它并没有做我认为它会做的事情,即将一个对象指向另一个对象的内存位置,至少据我所知。
我尝试了像 .Internal(inspect()) 这样的魔法调用,它对我没有任何魔力:
> a = 1:10
> b = a[-1]
> .Internal(inspect(a))
@00000000087AE578 13 INTSXP g0c4 [NAM(2)] (len=10, tl=23336) 1,2,3,4,5,...
> .Internal(inspect(b))
@00000000087AE8E8 13 INTSXP g0c4 [NAM(2)] (len=9, tl=7208) 2,3,4,5,6,...
> retracemem(b,retracemem(a))
> .Internal(inspect(b))
@00000000087AE8E8 13 INTSXP g0c4 [NAM(2)] (len=9, tl=7208) 2,3,4,5,6,...
【问题讨论】: