我有一个类属性标题,关键,艺术家等歌没有任何方法。我循环播放歌曲信息数据库并为每个歌曲创建一个歌曲对象,填充属性,然后将歌曲对象存储在NSArray中。Objective C Class or struct?
然后我想,为什么不只是有一个结构宋所有这些相同的属性,而不是一个类的歌曲。这样做会消除类文件,使用类的.m文件中的#import Song行,以及alloc,init,release的需要。
另一方面,我必须将结构定义放在每个可能需要它的类中。 (除非有全局可访问的位置 - 有吗?)另外,一个结构可以存储在NSArray中吗?
太棒了,现在我知道了。 – 2010-04-02 15:02:38
结构可以非常有效地存储在NSPointerArray中,无需NSValue(您必须使用各种函数来描述结构)。但是在ARC之下,结构体不能再包含对象,比如NSString:你必须将类似歌曲标题的东西赋予char,这使得结构的用处不大。所以,我正在改为上课。 – 2016-06-30 09:26:13