OC 中的 "结构体" 和 "枚举"

2025-10-17 05:44:43

1、一.OC中枚举的常见类型,及赋值

方法一、

typedef NS_OPTIONS(NSInteger , Colo){

    ColorBlack,

    ColorRed,

    ColorGreen

};

方法二、

typedef NS_ENUM(NSInteger , Colo){

    ColorBlack,

    ColorRed,

    ColorGreen

};

方法三、

typedef enum{

    ColorBlack,

    ColorRed,

    ColorGreen

}Colo;

==========================用法一

//

@implementation ViewController

{

     Colo col; //颜色

}

//===赋值===

self->col = ColorBlack;

==========================用法二

@interface ViewController ()

@property(nonatomic , assign) Colo col;  //枚举

@end

@implementation ViewController

//=====赋值=====

self.sex = ColorBlack;

//或

_sex = ColorBlack;

2、二、OC中结构体的类型,及赋值

//结构体 ---年月日 姓名

typedef struct {

    int year;

    int month;

    int day;

    char *name;

    char schoolName[10];

}Date;

==========================用法一

@implementation ViewController

{

    Date birthday; //生日

}

======赋值====

     //方法一、

    Date de = {2011,10,01};

    self->birthday = de;

    

    //方法二、

    self->birthday.year = 2017;

    self->birthday.month = 03;

    self->birthday.day = 16;

==========================用法二

@interface ViewController ()

@property (nonatomic , assign)  Date date;

@end

@implementation ViewController

======赋值====

    self -> _date.year = 2029;

    self -> _date.month = 11;

    self -> _date.day = 01;

    self -> _date.name = "小明";

    //这个比较特殊   用 strcpy 完成赋值

    strcpy(self -> _date.names , "pppp");

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢