我正在调试一些MATLAB代码,并希望确保对一个对象的两个引用实际上是在引用同一对象。有没有一种方法可以获取对象的唯一标识符(例如内存地址)?
据我所知,我无法将自己的ID添加到对象中,因为它们是MATLAB随机数流。
最佳答案
如果使用的是OOP,则可以添加一个属性ID
并在构造对象期间对其进行设置。java.rmi.server.UID()
是获取唯一ID的好方法
但是,通过==
进行测试将检查实际的句柄,因此这更多是可用性问题。
classdef yourClass < handle
properties
ID
end
methods
function obj = yourClass()
obj.ID = java.rmi.server.UID();
end
end
end
然后,检查对象将非常简单。