objective-c – 静态指针是强指针吗?
发布时间:2020-12-16 03:23:25 所属栏目:百科 来源:网络整理
导读:在目标c中,我知道静态变量(应该?)在程序的生存期内保留其值.但是如果它存储一个指针,它在ARC中是否很强?我可以依赖它,并确保在将它分配给静态变量后,该实例永远不会出现在堆中? static ClassA* shared;-(id)init{ if (self=[super init]) { shared=self;
在目标c中,我知道静态变量(应该?)在程序的生存期内保留其值.但是如果它存储一个指针,它在ARC中是否很强?我可以依赖它,并确保在将它分配给静态变量后,该实例永远不会出现在堆中?
static ClassA* shared; -(id)init { if (self=[super init]) { shared=self; } return self; } 解决方法
是的,一旦分配了它就可以依靠它.
Transitioning to ARC Release Notes状态:
接着:
给定静态指针引用对象,它将保持“活着”.指针的范围(无论是全局的,堆栈上的指针还是实例变量)都没有区别. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |