OC 对象整合练习题
发布日期:2021-06-30 22:37:03 浏览次数:2 分类:技术文章

本文共 1580 字,大约阅读时间需要 5 分钟。

题目:

这里写图片描述
这里写图片描述

代码:

#import 
typedef enum {kRed,kWhite,kGreen} Color;typedef enum {kSexMale,kSexFemale} Sex;@interface Dog : NSObject{
@public Color _color; NSString *name; int _weight; Sex _sex; int _speed;}-(void)eat:(NSString *) foodName;-(void)bark;-(void)run;-(Boolean)compareColor:(Dog *) dog;-(int)compareSpeed:(Dog *) dog;@end@implementation Dog-(void)eat:(NSString *) foodName{ NSLog(@"eat foodName %@",foodName);}-(void)bark{ NSLog(@"name=%@,weight=%d",name,_weight);}-(void)run{ _weight--; NSLog(@"name=%@,weight=%d",name,_weight);}-(Boolean)compareColor:(Dog *) dog{ if (_color == dog->_color) { //NSLog(@"相同"); return true; }else{ //NSLog(@"不同"); return false; }}-(int)compareSpeed:(Dog *) dog{ return _speed - dog->_speed;}@end#pragma mark -@interface Person:NSObject{
@public NSString *name; Dog *dog;}-(void)feedDog:(Dog *)dog;@end@implementation Person-(void)feedDog:(Dog *)dog{ NSLog(@"person.name= %@,dog.name=%@",name,dog->name);}@endint main(int argc, const char * argv[]){ @autoreleasepool { Dog *dog = [Dog new]; Dog *dog1 = [Dog new]; dog -> _speed = 70; dog1 -> _speed = 50; int res = [dog compareSpeed:dog1]; printf("%d\n",res); dog->_color = kGreen; dog1->_color = kWhite; Boolean flag = [dog compareColor:dog1]; NSLog(@"flag = %d",flag); Person *p = [Person new]; p->name = @"tom"; dog1->name = @"wangcai"; p->dog = dog1; [p feedDog:dog1]; } return 0;}

转载地址:https://lovoo.blog.csdn.net/article/details/51447522 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Android 使用三级缓存实现对图片的加载
下一篇:Salesforce 如何把签卡数据同步到中控系统

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月25日 06时28分55秒