• NS_ENUM和NS_OPTIONS


    OC由于是C的超集,所以可以直接用enum来声明枚举。

    但如果想要使用NSInteger作为enum的底层类型。

    需要两步:声明枚举enum,再typedef。

    使用NS_ENUM直接一步搞定。

    //
    //  main.m
    //  Hello Objective-C
    //
    //  Created by admin on 2020/11/16.
    //
    
    @import Foundation;
    
    enum Lesson {
      math,art,music
    };
    
    typedef NS_ENUM(NSInteger, Work) {
        engineer,
        teacher,
        doctor,
        others,
    };
    
    typedef NS_OPTIONS(NSInteger, Weather) {
        sunny = 0,
        rainy = 1 << 0,
        snowy = 1 << 1,
        foxy = 1 << 2,
    };
    
    int main(int argc, char* argv[]) {
        Weather x = rainy | snowy;  // 雨夹雪
        if (x & sunny) {
            printf("晴天
    ");
        }
        if (x & foxy) {
            printf("下雾了
    ");
        }
        if (x & snowy) {
            printf("下雪了
    ");
        }
        if (x & rainy) {
            printf("下雨了
    ");
        }
        return 0;
    }
  • 相关阅读:
    周二
    周末
    简单I/O
    格式输出(1)
    c语言—变量
    水仙花数
    控制语句—循环语句
    mysql6数据库安装与配置
    如何解决Tomcat端口号被占用
    eclipse配置tomcat详细步骤
  • 原文地址:https://www.cnblogs.com/FdWzy/p/14164805.html
Copyright © 2020-2023  润新知