朱莉娅的物件地址

时间:2016-02-07 09:48:57

标签: julia

如何将对象obj的地址作为纯字符串获取? pointer_from_objref()函数接近我想要的,但是当我打印结果时,我得"Ptr{Void} @0x00007f3864c40038"而不是"0x00007f3864c40038"。当然,我可以简单地丢弃前11个字符,但我觉得应该有一个更优雅的解决方案。

这个问题的动机是我正在研究基于邻接列表的图库,以类型为中心

immutable Vertex
    neighbors::Vector{Vertex}
end

目前,打印单个顶点会递归打印整个图形,这非常不方便。相反,我希望print(v)得到Vertex 0x00007f3864c40038

1 个答案:

答案 0 :(得分:7)

使用repr + UInt64是一种方式:

julia> a=10
10

julia> s=repr(UInt64(pointer_from_objref(a)))
"0x0000000080012230"

julia> print(s)
0x0000000080012230

使用Julia Version 0.4.3

进行测试