OC 中的 "结构体" 和 "枚举"
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");