当前位置:  开发笔记 > IOS > 正文

Iphone对象C - 数据,对象和数组

如何解决《Iphone对象C-数据,对象和数组》经验,为你挑选了1个好方法。

所以我是一个Flash家伙,我正在尝试将以下代码转换为对象C:

    var slot:Object = new Object();
    slot.id         = i;
    slot.xPos       = 25*i;
    slot.yPos       = 25*i;
    slot.isEmpty    = False;
// push object to array
    arrGrid.push(slot);

后来我可以覆盖:

arrGrid[0].isEmpty = True;

我似乎无法找到在对象C中创建通用对象的引用.有人可以帮忙吗?



1> paulthenerd..:

假设你在cocoa中使用iphone或mac做一些事情,你可以简单地继承NSObject(objective-c中的基类).

你需要一个.h和.m这样的例子就像:(注意我使用了slotId而不是id,因为id是objective-c中的一个关键字)

Slot.h

// Slot.h 
@interface Slot : NSObject {
  NSInteger slotId;
  float xPos;
  float yPos;
  BOOL empty;
}

@property NSInteger slotId;
@property float xPos;
@property float yPos;
@property BOOL empty;

@end

// Slot.m
#import "Slot.h"

@implementation Slot

@synthesize slotId;
@synthesize xPos;
@synthesize yPos;
@synthesize empty;

@end

它定义了一个具有4个属性的简单Slot对象,可以使用点表示法访问它们,例如:

s = [[Slot alloc] init];
s.empty = YES;
s.xPos = 1.0;
s.yPos = 1.0;

根据您处理的数据类型,您使用的数据类型以及如何定义属性等有很多变体.

如果要将插槽对象添加到数组,可以使用一个简单示例:

// create an array and add a slot object
NSMutableArray *arr = [NSMutableArray array];
Slot *slot = [[Slot alloc] init];
[arr addObject:slot];

// set the slot to empty
[[arr objectAtIndex:0] setEmpty:YES];

推荐阅读
k78283381
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有