首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ARC下的Objective-C是否保证将静态变量和ivars初始化为零?

问ARC下的Objective-C是否保证将静态变量和ivars初始化为零?
EN

Stack Overflow用户
提问于 2017-05-25 22:52:04
回答 1查看 142关注 0票数 1

浏览Apple的官方过渡到ARC文档,它说“堆栈变量”现在被初始化为零值。然而,在我的快速、非正式的测试中,静态变量和ivars似乎也被初始化为零;一些人表示相信它们绝对是自动归零的。然而,静态变量和依瓦尔不是堆栈变量。苹果是否发布了关于静态变量和ivars的不同法令?

另外,函数中静态变量的初始化和函数外部静态变量的初始化有区别吗?

EN

回答 1

Stack Overflow用户

发布于 2017-05-25 22:59:54

由于语言的语义,static变量被归零-作为C的严格超集,行为是有保证的。ivars are also guaranteed to be zeroed out upon initialization (见项目符号3)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44183555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档