使用ARC在iOS6中定义结构

时间:2012-12-20 15:01:14

标签: objective-c struct automatic-ref-counting

简单的问题:我学习了C ++和struct的语法。所以我想在我的iOS应用程序中使用结构来存储数据,但ARC不允许通常使用结构体是否有任何解决方案可用于我的问题?

struct fruit {
    int a;
};

_

{
struct fruit apple;
apple.a = 1;
return 0;
}

e.g。是否有可能用NSMutableArray解决这个问题? 顺便说一下,我必须定义那个? .m文件或​​.h文件?

关心CTS

1 个答案:

答案 0 :(得分:4)

当然,即使使用ARC,也允许在Objective-C中使用结构体。您指定的结构应该完全没有问题:

struct fruit {
    int a;
};

ARC出现的唯一问题是包含Objective-C对象的结构,因为ARC不知道如何管理这些对象。但是,你可以使用__unsafe_unretained让编译器知道“你知道,你在做什么”:

struct foo {
    __unsafe_unretained NSString *bar;
};
在这种情况下,

bar只是一个指针,而不是由ARC管理的强引用。 Apple建议在可能的情况下使用简单类。