`
浮生长恨
  • 浏览: 212813 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

objective-c enum 与 typedef(转)

阅读更多

今天看到enum 和 typedef, 在两个小节中书中分别出现了2个例子,如下

enum direction {north, south, east, west};

typedef enum {north, south, east, west} direction;

不禁产生疑问,这两个有什么区别,仔细对照了一下,发现是这样的:

大同小异,

同: 都是申明了一个枚举类型。

异:在使用该枚举类型定义变量的时候,语法不一样,举例如下:

 

 

 enum direction {north, south, east, west};    

 enum direction facing = north;  

 

 typedef enum {north, south, east, west} direction;     

 direction facing = north;

 

原地址:

http://xiaoxuejie.iteye.com/blog/1574606
分享到:
评论

相关推荐

    Objective-C switch 语句

    它与C语言中的`switch`语句基本相似,但在某些方面有所扩展和改进,使得在Objective-C中使用更加灵活。 ### 1. `switch`语句的基本结构 ```objc switch (expression) { case constant1: // code block 1 break;...

    Stinger:Stinger是高效的库,具有高度兼容性,对于libc-a中的aop,使用libffi而不是Objective-C消息转发。 从消息发送到面向方面的代码结束,它比方面的速度快20倍以上

    Stinger是一个高效的库,具有很高的兼容性,适用于Objective-C中的aop。 它允许您在考虑插入点(例如之前/之后/之后)的同时,向现有方法添加代码。 Stinger自动处理调用super的问题,并且比使用常规方法(使用...

    OC调用swift的DEMO

    3. 添加`-enable-objc-interop`,以启用Objective-C与Swift的互操作性。 4. 搜索“Objective-C Bridging Header”,并输入你的桥接头文件路径,例如:`$(SRCROOT)/YourProject/ProjectName-Bridging-Header.h`。 接...

    如何通过Objective-C的枚举学习iOS中位操作.md详解

    在iOS开发中,Objective-C和Swift的枚举(enum)经常用于表示一组相关的常量,同时结合位操作可以实现高效的数据存储和处理。本篇文章将深入讲解如何通过Objective-C的枚举来学习iOS中的位操作。 位操作是针对二...

    Objective-C编程中语句和变量的一些编写规范建议

    在Objective-C编程中,遵循良好的编码规范至关重要,这有助于提高代码的可读性、可维护性和安全性。以下是一些关于语句和变量的编写规范建议: 1. **条件语句体的大括号**:无论条件语句体是否只有一行,都应该使用...

    object c中关于foundation类得ppt

    - 定义一个枚举类型:`typedef NS_ENUM(NSUInteger, AnimalType) { Cat, Dog, Fish };` - 使用枚举变量:`AnimalType myPet = Dog;` ### Q&A问答环节 #### 问题1:如何在Objective-C中创建格式化的字符串? 答...

    014-ObjcSwitch

    标题“014-ObjcSwitch”提示我们这个主题与Objective-C编程语言中的开关语句有关,可能是关于如何使用`switch`语句进行条件判断的一个教程或者代码示例。Objective-C是苹果公司开发的一种面向对象的编程语言,常用于...

    iOS 判断网络状态

    typedef enum { NotReachable = 0, ReachableViaWiFi = 1, ReachableViaWWAN = 2 } NetworkStatus; ``` 根据这些状态,我们可以知道设备当前是否连接到网络,以及连接的类型(无网络、WiFi或蜂窝数据)。 当应用...

    斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 4)

    typedef enum { Red, Green, Blue } Color; // 或者使用枚举声明 enum Color { Red = 1, Green, Blue }; ``` 枚举使得代码更加清晰易读,并且有助于避免错误。 #### 属性列表(Property Lists) 属性列表...

    ios-button中image和title的位置.zip

    typedef NS_ENUM(NSInteger, ImageTitlePosition) { ImageTitlePositionTop, ImageTitlePositionBottom, ImageTitlePositionLeft, ImageTitlePositionRight }; ``` 3. **添加方法**: 接下来,我们需要为分类...

    【无限互联】iOS开发视频教程课件第1、2章OC基础语法课件

    ### iOS开发之Objective-C基础语法知识点详解 #### 一、标示符 在Objective-C (以下简称OC) 语言中,标示符是用来标识各种变量、方法、类等元素的名称。标示符遵循一定的命名规则: - **组成**: 字母、下划线“_”...

    Swift 3.0 enum 的灵活使用介绍

    在Objective-C中,枚举通常基于基本数据类型如NSUInteger定义,但Swift的enum支持更加丰富的特性,如关联值、原始值和协议遵循,从而提供了更大的灵活性。 首先,让我们看看Objective-C中的枚举例子: ```swift ...

    NOXcodeEnumDebug

    该插件旨在简化 Objective-C 中枚举的打印调试值。 使用时,它为当前文件中的每个 NS_ENUM 和 NS_OPTIONS 定义创建一个简单的 NSStringFrom... 函数,将枚举值作为 NSString 返回。 例如,你有 typedef NS_ENUM ( ...

    oc编码规范doc

    typedef NS_ENUM(NSInteger, PayType) { PayTypeCash = 0, // 现金支付 PayTypePos = 1, // POS支付 ... }; ``` - **缩写**:只使用那些广泛认可的缩写,例如`ip`、`http`、`msg`等,避免自行创造缩写词。 ##...

    iOS开发之枚举用法小结

    无论是C语言中的传统枚举,还是Objective-C中的`NS_ENUM`和`NS_OPTIONS`,都能够帮助开发者更好地组织代码,特别是在处理一系列相关状态或选项时。正确地使用枚举可以降低代码的理解难度,提高代码质量,是iOS开发中...

    RunTime-Button:UIButton 防止连续点击事件,进行时间范围控制!

    Objective-C运行时是一套C语言库,它允许我们在程序运行时动态地改变对象的属性和方法,增强了面向对象编程的灵活性。我们可以通过运行时来添加或修改类的方法,这正是实现防止连续点击功能的关键。 以下是一种常见...

    嵌入式linux工程师面试题目C语言基础部分文档1.pdf

    typedef enum {FALSE = 0, TRUE = 1} bool; #define FALSE 0 #define TRUE 1 ``` 19. C语言的const的含义是什么?在定义常量时,为什么推荐使用const,而不是#define? `const`关键字定义的常量是可寻址的,...

    iOS项目框架搭建

    typedef NS_ENUM(NSInteger, UserGender) { UserGenderMale, UserGenderFemale }; // 宏函数 #define RGBColor(r, g, b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1.0] ``` 三、...

    ios 11和iphone x的相关适配问题及解决方法

    typedef NS_ENUM(NSUInteger, DeviceScreenType) { DeviceTypeIphone4Screen, DeviceTypeIphone5Screen, DeviceTypeIphone6Screen, DeviceTypeIphone6PlusScreen, DeviceTypeIphoneXScreen, DeviceType }; ```...

Global site tag (gtag.js) - Google Analytics