黑马程序员技术交流社区

标题: 面向对象基础练习代码 [打印本页]

作者: ncrbot    时间: 2015-11-2 22:36
标题: 面向对象基础练习代码
#import <Foundation/Foundation.h>
//定义两个枚举
typedef enum color{kblack,kwhite,kyellow} color;
typedef enum sex{kmale,kfemaile} sex;

//声明一个方法
@interface Dog : NSObject
{
    @public
    //定义成员变量(实例变量)(属性)
    color _color;
    sex _sex;
    int _speed;
    float _weight;


}

//声明行为
-(void)eat;
-(void)run;
-(int)speedcom:(Dog *)dog;
-(BOOL)colorcom:(Dog *)dog;

@end
//方法的实现
@implementation Dog
//行为实现

-(void)eat{

    _weight+=0.5f;
    NSLog(@"狗吃了,体重变为%.2f",_weight);

}
-(void)run{
    _weight-=0.5f;
    NSLog(@"狗绕地球跑了一圈,体重变为%.2f",_weight);


}
-(int)speedcom:(Dog *)dog{
   
   
    return _speed-dog->_speed;
}

-(BOOL)colorcom:(Dog *)dog{

    if (_color==dog->_color) {
        return YES;
    }
    return NO;


}
@end

int main(int argc, const char * argv[]) {
    @autoreleasepool {

        Dog *bd=[Dog new];
        bd->_color=kblack;
        bd->_sex=kmale;
        bd->_speed=200;
        bd->_weight=2.5f;
        [bd eat];
        [bd run];
        Dog *wd=[Dog new];
        wd->_color=kwhite;
        wd->_sex=kfemaile;
        wd->_speed=150;
        wd->_weight=2.0f;
        int num=[bd speedcom:wd];
        NSLog(@"两只狗的速度差为:%d",num);
        BOOL isyes=[bd colorcom:wd];
        if (isyes) {
            NSLog(@"两只狗的毛色相同");
        }else{
   
            NSLog(@"两只狗的毛色不同");
        }
        
    }
    return 0;
}

作者: laughing_coffin    时间: 2015-11-2 22:56
顶了,加油↖(^ω^)↗
作者: xinxin08    时间: 2015-11-2 23:45
不错哇!!!厉害!!!
作者: 谁在放荡    时间: 2015-11-2 23:46
顶,厉害
作者: huoshan    时间: 2015-11-2 23:56
顶一个,加油
作者: toveyloves    时间: 2015-11-3 00:15
注释好少,也不知道需求
作者: nebouxii    时间: 2015-11-3 20:59
顶顶 加油
作者: 杨鹏飞    时间: 2015-11-3 21:21
顶,加油,注释写得再多一点就好了。
作者: aidan    时间: 2015-11-3 21:31
厉害厉害,赞一个
作者: 醉叶惜秋    时间: 2015-11-3 21:40
表示好高大上的样子
作者: 865393462    时间: 2015-11-3 22:02
厉害厉害!在下佩服佩服!
作者: 大雕会飞    时间: 2015-11-3 22:31
学习了,,,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2