Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 在目标C中编程时,什么更有效?Structs还是类似Structs的某个目标C数据类型?_Objective C_C_Struct - Fatal编程技术网

Objective c 在目标C中编程时,什么更有效?Structs还是类似Structs的某个目标C数据类型?

Objective c 在目标C中编程时,什么更有效?Structs还是类似Structs的某个目标C数据类型?,objective-c,c,struct,Objective C,C,Struct,在objective c中是否有更高效的数据类型实现了结构,或者c结构(即使在objective c中使用)是否更高效?如果您只需要数据记录(即没有方法),c结构在空间和速度方面是最高效的 但是,Objective-C对象在后台实现为C结构,因此原始成员访问速度与C结构一样快。人们倾向于不使用它,因为在大多数情况下,使用访问器的优势超过了速度损失。如果您只需要一个数据记录(即没有方法),C结构在空间和速度方面是最有效的 但是,Objective-C对象在后台实现为C结构,因此原始成员访问速度与C

在objective c中是否有更高效的数据类型实现了结构,或者c结构(即使在objective c中使用)是否更高效?

如果您只需要数据记录(即没有方法),c结构在空间和速度方面是最高效的


但是,Objective-C对象在后台实现为C结构,因此原始成员访问速度与C结构一样快。人们倾向于不使用它,因为在大多数情况下,使用访问器的优势超过了速度损失。

如果您只需要一个数据记录(即没有方法),C结构在空间和速度方面是最有效的


但是,Objective-C对象在后台实现为C结构,因此原始成员访问速度与C结构一样快。人们倾向于不使用它,因为在大多数情况下,使用访问器的优势超过了速度损失。

最有效的存储机制是在竞争对手之前将应用程序推向市场,同时提供良好的用户体验。

您是否真的使用了如此多的数据,以至于您已经衡量了重要的性能影响

对于普通的、结构化的、非持久化的数据,我使用Objective-C类和一系列用于各种字段的
@property
声明。这样做可以使内存管理保持与数据封装在一起,并且我可以在以后轻松地将其重构为具有持久性和/或业务逻辑的完整类


对于持久化数据,除了纯粹的对象图存档之外,我几乎所有的东西都使用核心数据。

最有效的存储机制是在竞争对手之前将应用程序推向市场,同时提供良好的用户体验。

您是否真的使用了如此多的数据,以至于您已经衡量了重要的性能影响

对于普通的、结构化的、非持久化的数据,我使用Objective-C类和一系列用于各种字段的
@property
声明。这样做可以使内存管理保持与数据封装在一起,并且我可以在以后轻松地将其重构为具有持久性和/或业务逻辑的完整类


对于持久化数据,除了对象图的纯存档之外,我几乎所有的东西都使用核心数据。

您有什么可以比较的吗?例如,另一种语言的功能?您是否有任何要与之进行比较的内容?比如说另一种语言的功能?回答不错。对于序列化和反序列化这些自定义对象,最好的技术是什么?将这些属性和键值对传输到plist或实际存档?@user773578:我会使用plistm来处理少量不需要频繁读取的结构化数据,而使用存档来处理大量数据。对于Objective-C,为了持久性,我倾向于使用核心数据和sqlite3备份存储。然后框架会处理所有这些。谢谢。你会在哪里拯救普利斯特?与iOS 5.0一样,文档目录也会受到限制。@user773578:我不能对iOS 5发表评论,因为如果我在上面看到了文档,我还签署了苹果的保密协议。对于其他版本,我会使用documents目录,除非它是配置信息,在这种情况下,我会使用NSUserDefaults。回答不错。对于序列化和反序列化这些自定义对象,最好的技术是什么?将这些属性和键值对传输到plist或实际存档?@user773578:我会使用plistm来处理少量不需要频繁读取的结构化数据,而使用存档来处理大量数据。对于Objective-C,为了持久性,我倾向于使用核心数据和sqlite3备份存储。然后框架会处理所有这些。谢谢。你会在哪里拯救普利斯特?与iOS 5.0一样,文档目录也会受到限制。@user773578:我不能对iOS 5发表评论,因为如果我在上面看到了文档,我还签署了苹果的保密协议。对于其他版本,我会使用documents目录,除非它是配置信息,在这种情况下,我会使用NSUserDefaults。