黑马程序员技术交流社区
标题:
急求解决。为什么我运行完后没有结果,求解答
[打印本页]
作者:
泥娃娃
时间:
2016-3-19 17:00
标题:
急求解决。为什么我运行完后没有结果,求解答
关于这道题,为何我这样写,什么结果都没有,求解释!!!
设计一个菜单类
*一个添加菜单的对象方法
*一个删除菜单的对象方法
*还有一个打印数组中所有菜单的对象方法
main.m
#import <Foundation/Foundation.h>
#import "CZCarte.h"
#import "CZFood.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
CZCarte *carte = [CZCarte new];
CZFood *f1 = [CZFood new];
f1.name = @"酸辣土豆丝";
f1.price = 12;
f1.info =@"辣椒炒土豆";
[carte addFood:f1];
[carte printCarte];
}
return 0;
}
复制代码
菜单类
CZCarte.h
#import <Foundation/Foundation.h>
@class CZFood;
@interface CZCarte : NSObject
{
NSMutableArray * _foods;
}
/**添加菜*/
-(void) addFood:(CZFood *) food;
/**删除菜*/
-(void) removeFood:(CZFood *) food;
/**打印菜单*/
-(void) printCarte;
@end
复制代码
菜单类实现
CZCarte.m
#import "CZCarte.h"
#import "CZFood.h"
@implementation CZCarte
/**添加菜*/
-(void) addFood:(CZFood *) food {
[_foods addObject:food];
}
/**删除菜*/
-(void) removeFood:(CZFood *) food {
[_foods removeObject:food];
}
/**打印菜单*/
-(void) printCarte {
for (CZFood *food in _foods) {
NSLog(@"菜名:%@",[food name]);
NSLog(@"价格:%f",[food price]);
NSLog(@"简介:%@",[food info]);
}
}
@end
复制代码
菜类
菜类里没有实现,只有声明
CZFood.h
#import <Foundation/Foundation.h>
@interface CZFood : NSObject
@property (nonatomic,strong) NSString *name; // 菜名
@property (nonatomic,assign) float price; //价格
@property (nonatomic,strong) NSString *info; // 简介
@end
复制代码
作者:
MuziTian
时间:
2016-3-19 21:53
请检查for循环用的对么
作者:
泥娃娃
时间:
2016-3-20 08:55
MuziTian 发表于 2016-3-19 21:53
请检查for循环用的对么
没有的 ,每循环一次,打印一组菜名,价格和简介。数组里有几种菜,就会打印几种
作者:
278008379
时间:
2016-3-21 12:46
现在还不会,学会后再来
作者:
泥娃娃
时间:
2016-3-21 16:31
278008379 发表于 2016-3-21 12:46
现在还不会,学会后再来
{:2_36:}一起加油
作者:
外号狐狸
时间:
2016-3-23 14:22
forin加强这一这样用?基础版高手
作者:
起个名老说太长
时间:
2016-4-6 13:58
你没有把修改后才数据返回 试试把void 改成菜单类 ,再找个对象接收
作者:
UKnowINeedYou
时间:
2016-4-6 16:45
@property (nonatomic,strong) NSString *name; // 菜名 @property (nonatomic,assign) float price; //价格 @property (nonatomic,strong) NSString *info; // 简介 这里的两个strong换成copy试试
作者:
张立鹏
时间:
2016-4-17 00:35
打印的方法里用到应该是更新后对象的值,所以应该给打印的方法加一个参数,并将这个修改后的实参返回
作者:
张立鹏
时间:
2016-4-17 00:37
/**打印菜单*/
-(CZFood *) printCarte :(CZFood *) food {
for (CZFood *food in _foods) {
NSLog(@"菜名:%@",[food name]);
NSLog(@"价格:%f",[food price]);
NSLog(@"简介:%@",[food info]);
}
}
@end
复制代码
这样试试
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2