2015-06-22 96 views
1

我想知道变量占用的内存......很简单,我可以计算地址。任何方便的方法来打印内存,NSArray,NSDictionary和其他。是否可以打印Objective-C,iOS变量的内存?

+0

检查此: - [http://stackoverflow.com/questions/7555143/nslog-an-objects-memory-address-in-overridden-description-method](http://stackoverflow.com/questions/7555143/nslog-an-objects-memory-address-in-overridden-description-method) – Gandalf

+0

为“NSArray”或“NSDictionary”分配的内存可能不是连续的,因此在某些情况下会很困难。 – zaph

回答

2

任何方便的方法来打印内存,NSArray,NSDictionary,和其他人。

“记忆”可能不会告诉你很多。 Foundation的容器类存储指向对象的指针,所以你只能看到内存地址。另外,为了理解“记忆”,您需要了解这些类的内部结构。实际上,这些类的不同实例为might not even have the same representation。相反,让对象告诉你它包含的内容要好得多。

您可以使用-description方法获取大多数对象的描述。这是检查对象的常用方法。还有一个-debugDescription,当您使用po命令打印对象时,它是what the debugger calls