MoonBit月兔编程语言 现代编程思想 第四课 多元组, 结构体,枚举类型
现代编程思想 多元组,结构体与枚举类型 Hongbo Zhang 1 基础数据类型:多元组与结构体 2 回顾:多元组 多元组:固定⻓度的不同类型数据的集合 定义: (<表达式>, <表达式>, ...) 类型: (<表达式类型>, <表达式类型>, ...) 例如: 身份信息: ("Bob", 2023, 10, 24): (String, Int, Int, Int) 成员访问: Cons(2, x) = List::Cons(1, Nil) // 运⾏时错误,程序中⽌ 15 枚举类型 16 不同情况的并集 如何定义周⼀到周⽇的集合? 如何定义硬币落下结果的集合? 如何定义表示整数四则运算的结果的集合? ... 17 枚举类型 为了表示不同情况的数据结构,我们使⽤枚举类型 1. enum DaysOfWeek { 2. Monday; Tuesday; Wednesday; Wednesday; Thursday; Friday; Saturday; Sunday 3. } 1. enum Coin { 2. Head 3. Tail 4. } 18 枚举类型的定义与构造 1. enum DaysOfWeek { 2. Monday; Tuesday; Wednesday; Thursday; Friday; Saturday; Sunday 3.0 码力 | 26 页 | 435.86 KB | 1 年前3Rust 程序设计语言简体中文版
....................... 115 6. 枚举和模式匹配 ................................................................................................................... 122 6.1. 枚举的定义 ............................ 章,直接阅读第 3 章,等到你想要通过项目应用所学到的 细节时再回到第 2 章。 第 5 章讨论结构体(struct)和方法,第 6 章介绍枚举(enum)、match 表达式和 if let 控 制流结构。在 Rust 中,创建自定义类型需要用到结构体和枚举。 第 7 章介绍 Rust 的模块(module)系统,其中的私有性规则用来组织代码和公开的 API(应 用程序接口)。第 8 章讨论标准库提供的常见集合数据结构,例如 read_line 会将用户输入附加到传递给它的字符串中,不过它也会返回一个类型 为 Result 的值。 Result 是一种枚举类型,通常也写作 enum。枚举类型变量的值可以是多 种可能状态中的一个。我们把每种可能的状态称为一种 枚举成员(variant)。 第六章将介绍枚举的更多细节。这里的 Result 类型将用来编码错误处理的信息。 Result 的成员是 Ok 和 Err ,Ok0 码力 | 600 页 | 12.99 MB | 1 年前3TypeScript 4.0 使用手册
Knockout.js React与webpack React Angular 2 从JavaScript迁移到TypeScript 手册 基础类型 变量声明 接口 类 函数 泛型 枚举 类型推论 类型兼容性 高级类型 Symbols Iterators 和 Generators 模块 命名空间 命名空间和模块 模块解析 声明合并 JSX Decorators js React与webpack React Angular 2 从JavaScript迁移到TypeScript 手册 基础类型 变量声明 接口 类 函数 字面量类型 泛型 枚举 类型推论 类型兼容性 高级类型 Symbols Iterators 和 Generators 模块 命名空间 命名空间和模块 模块解析 声明合并 JSX Decorators Knockout.js React与webpack React Angular 2 从JavaScript迁移到TypeScript 手册 基础类型 变量声明 接口 类 函数 泛型 枚举 介绍 目录 Introduction - 12 - 本文档使用 书栈网 · BookStack.CN 构建 类型推论 类型兼容性 高级类型 Symbols Iterators 和0 码力 | 683 页 | 6.27 MB | 1 年前3TypeScript Handbook(中文版)
16 3.17 3.18 3.19 3.20 3.21 3.22 4 4.1 4.2 4.3 4.4 4.5 4.6 5 5.1 5.2 接口 类 函数 泛型 枚举 类型推论 类型兼容性 高级类型 Symbols Iterators 和 Generators 模块 命名空间 命名空间和模块 模块解析 声明合并 书写.d.ts文件 JSX 1.6 TypeScript 1.5 TypeScript 1.4 TypeScript 1.3 TypeScript 1.1 手册 基础类型 变量声明 接口 类 函数 泛型 枚举 类型推论 类型兼容性 高级类型 Symbols Iterators 和 Generators 模块 命名空间 命名空间和模块 模块解析 声明合并 书写.d.ts文件 JSX 虑使用这个新特性并把输出模块目标设置为 esnext 。 字符串枚举 TypeScript 2.4现在支持枚举成员变量包含字符串构造器。 enum Colors { Red = "RED", Green = "GREEN", Blue = "BLUE", } 需要注意的是字符串枚举成员不能被反向映射到枚举成员的名字。 换句话说,你不 能使用 Colors["RED"]0 码力 | 557 页 | 7.48 MB | 1 年前3Rust 程序设计语言 简体中文版 1.85.0
. . . . 109 6. 枚举和模式匹配 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 6.1. 枚举的定义 . . . . . . 个细节,你可能会想要跳过第二章,直接阅读第三章,等到你想要通过项目应用所学到的细节 时再回到第二章。 第五章讨论结构体(struct)和方法,第六章介绍枚举(enum)、match 表达式和 if let 控 制流结构。在 Rust 中,创建自定义类型需要用到结构体和枚举。 第七章介绍 Rust 的模块(module)系统,其中的私有性规则用来组织代码和公开的 API(应 用程序接口)。第八章讨论标准库提供的常见集合数据结构,例如 之前提到了 read_line 会将用户输入附加到传递给它的字符串中,不过它也会返回一个类型为 Result 的值。Result 是一种枚举类型,通常也写作 enum,它可以是多种可能状态中的一个。 我们把每种可能的状态称为一种 枚举成员(variant)。 第六章将介绍枚举的更多细节。这里的 Result 类型将用来编码错误处理的信息。 Result 的成员是 Ok 和 Err,Ok 成员表示操作成功,内部包含成功时产生的值。Err0 码力 | 562 页 | 3.23 MB | 9 天前3Nim 2.0.2 中文手册
是静态类型语⾔。在语义分析期间,所有的表达式都有⼀个已知类型。可以声明新的类型,其实质上是定义了⼀个标识符, ⽤来表示这个⾃定义类型。 这些是主要的类型分类: 序数类型(包括整数、布尔、字符、枚举、枚举⼦范围) 浮点类型 字符串类型 结构化类型 引⽤(指针)类型 过程类型 泛型类型 序数类型 序数类型有以下特征: 序数类型是可数的和有序的。因⽽允许使⽤如 inc , ord , 获取。尝试从最⼩值继续减⼩,会产⽣ panic 或静态错误。 序数类型具有最⼤可使⽤值,可以通过 high(type) 获取。尝试从最⼤值继续增⼤,会产⽣ panic 或静态错误。 整数、bool、字符和枚举类型(以及这些类型的⼦范围)属于序数类型。 如果 distinct 类型的基类型是序数类型,则 distinct 类型也为序数类型。 预定义整数类型 这些整数类型是预定义的: int 常规 Unicode 字符。 枚举类型 枚举类型定义了⼀个其值由指定的值组成的新类型,这些值是有序的。例如: 以下情况成⽴: 由此可知,north < east < south < west。⽐较运算符可以与枚举类型⼀起使⽤。枚举值也可以使⽤它所在的枚举类型来限定,如 north 可以⽤ Direction.nort 来限定。 为了更好地与其他编程语⾔连接,可以显式为枚举类型字段分配序数值,但0 码力 | 127 页 | 7.05 MB | 1 年前3大学霸 Kali Linux 安全渗透教程
设置ProxyChains 2.5 目录加密 第3章 高级测试实验室 3.1 使用VMware Workstation 3.2 攻击WordPress和其他应用程序 第4章 信息收集 4.1 枚举服务 4.2 测试网络范围 4.3 识别活跃的主机 4.4 查看打开的端口 4.5 系统指纹识别 4.6 服务的指纹识别 4.7 其他信息收集手段 4.8 使用Maltego收集信息 4.9 绘制网络结构图 知识点如下: 枚举服务; 测试网络范围; 识别活跃的主机和查看打开的端口; 系统指纹识别; 服务指纹识别; 其他信息收集手段; 使用Maltego收集信息; 绘制网络图。 大学霸 Kali Linux 安全渗透教程 110 第4章 信息收集 4.1 枚举服务 枚举是一类程序,它允许用户从一个网络中收集某一类的所有相关信息。本节将介 绍DNS枚举和SNMP枚举技术。DNS枚举可以收集本地所有DNS服务和相关条目。 DNS服务和相关条目。 DNS枚举可以帮助用户收集目标组织的关键信息,如用户名、计算机名和IP地址 等,为了获取这些信息,用户可以使用DNSenum工具。要进行SNMP枚举,用户 需要使用SnmpEnum工具。SnmpEnum是一个强大的SNMP枚举工具,它允许用户 分析一个网络内SNMP信息传输。 4.1.1 DNS枚举工具DNSenum DNSenum是一款非常强大的域名信息收集工具。它能够通过谷歌或者字典文件猜0 码力 | 444 页 | 25.79 MB | 1 年前3现代C++ 教程:高速上手C++11/14/17/20
30 显式禁用默认函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 强类型枚举 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 总结 . . Magic(int magic_number); } 强类型枚举 在传统 C++ 中,枚举类型并非类型安全,枚举类型会被视作整数,则会让两种完全不同的枚举类 型可以进行直接的比较(虽然编译器给出了检查,但并非所有),甚至同一个命名空间中的不同枚举类型 的枚举值名字不能相同,这通常不是我们希望看到的结果。 C++11 引入了枚举类(enumeration class),并使用 enum class unsigned int { value1, value2, value3 = 100, value4 = 100 }; 这样定义的枚举实现了类型安全,首先他不能够被隐式的转换为整数,同时也不能够将其与整数数 字进行比较,更不可能对不同的枚举类型的枚举值进行比较。但相同枚举值之间如果指定的值相同,那 么可以进行比较: if (new_enum::value3 == new_enum::value4)0 码力 | 83 页 | 2.42 MB | 1 年前3Comprehensive Rust(简体中文) 202412
48 10.2 元组结构体 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 10.3 枚举 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 10.4 static . 212 37.2.5 共享类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 37.2.6 共享枚举 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 37.2.7 Rust 错误处理 . . . . 的第一天。我们会涉及很多内容: • Rust 基本语法:变量、标量(scalar)和复合(compound)类型、枚举(Enum)、结构体(struct)、引 用、函数和方法。 • Types and type inference. • 控制流结构:循环、条件语句等。 • 用户定义的类型:结构体和枚举。 • 模式匹配:解构枚举、结构体和数组(array)。 时间表 Including 10 minute breaks0 码力 | 359 页 | 1.33 MB | 10 月前3Object Pascal 参考手册(Ver 0.1)
简单类型包括有序类型和实数类型,它们定义有次序的数值集合。 Ordinal types(有序类型) Ordinal types: Overview(概述) 有序类型包括整数、字符、布尔、枚举和子界类型。有序类型定义一个有次序的数值集合,除了它的第 一个值以外,其它每个值都有一个唯一的前驱值(predecessor);除了最后一个外,其它每个值都有一个 唯一的后继值(successor) n-1,它的后继值序数为 n+1。 � 对整数类型,一个值的序数为它本身的值 � 子界类型保留它们的基础类型的序数值 � 对其它有序类型,默认情况下,第一个值的序数为 0,下一个为 1,依此类推。声明一个枚举类型 时,可明确地覆盖默认值。 有几个内置的函数作用于有序类型的数据和类型标志符,下面是最重要的几个: 函数 参数 返回值 说明 Ord 有序类型表达式 序数值 不能用于 Int64 ... if X <> 0 then OK := True; if OK then ...; Enumerated types(枚举类型) 枚举类型定义一个有次序的值的集合:这些值用标志符表示,并被列举出来,但它们并没有内在的含义。 定义一个枚举类型,使用下面的语法: type typeName = (val1, ..., valn) 这里,typeName 和每个值是有效的标志符。例如,下面的声明0 码力 | 168 页 | 868.25 KB | 1 年前3
共 226 条
- 1
- 2
- 3
- 4
- 5
- 6
- 23