您好我正在尝试为我的 iphone 应用程序构建一个存储类。存储类用于存储食品订单列表,每个订单都有食品名称和价格。在应用程序中,当我按下食物菜单上的按钮时,我想将它按顺序存储到一个名为 orders 的数组中。我是 Objective-c 的新手,我是 Java 用户。我要构建的是一个类似于 java 的 ArrayList 类的存储类,myStorage 类保存食物名称和价格。
我已经构建了一些代码,但是在 @property (nonatomic) NSMutableArray *orders 的 Storages.h 上编译时出现错误“'order' 的本地声明隐藏了实例变量”;
存储.h
#import <Foundation/Foundation.h>
@interface Storage : NSObject{
NSString *name;
NSInteger *price;
}
@property (nonatomic)NSString *name;
@property (nonatomic)NSInteger *price;
-(void) setName: (NSString *) n;
-(void) setPrice: (NSInteger *) p;
-(NSString *)getName;
-(NSInteger *)getPrice;
@end
存储.m
#import "Storage.h"
@implementation Storage
@synthesize name;
@synthesize price;
- (void)setName:(NSString *)n {
name = n;
}
- (void)setPrice:(NSInteger *)n {
price = n;
}
- (NSString *)getName{
return name;
}
- (NSInteger *)getPrice{
return price;
}
@end
存储.h
#import <Foundation/Foundation.h>
#import "Storage.h"
@interface Storages : NSObject{
Storage *order;
NSMutableArray *orders;
@property (nonatomic) NSMutableArray *orders; // error "Type of property 'orders' does not match type of accessor 'setOrder'"
-(void) setOrders:(Storage *)order;
-(NSMutableArray *) orders;
@end
存储.m
#import "Storages.h"
@implementation Storages
@synthesize orders;
-(void) setOrders:(Storage *)oneOrder{
[orders addObject: oneOrder];
}
-(NSMutableArray *) orders;{
return orders;
}
@end