👉以下内容均来自于仓颉编程语言入门教程_哔哩哔哩_bilibili↗
一、基础概念
1.1 标识符

1.2 变量
let a = 1后,a的值不能再修改
再执行a = 2会编译报错cannot assign twice to immutable variable
仓颉语法观念中,默认情况下,所有变量初始化后不可变


1.3 基础数据类型

1.4 表达式

1.4.1 if

1.4.2 while

1.4.3 for-in


1.5 分包

二、函数
2.1 定义

2.2 调用

2.3 lambda

2.4 示例

三、枚举
通常,我们使用枚举类型来定义一组有关联的符号,在一些场景用来做分类和标记等等,这些符号的字面含义可以增强程序的可读性。仓颉语言的枚举类型不仅支持这种传统用法,还支持定义带参数的枚举项和成员函数等,枚举项的构造参数还支持递归引用枚举类型自身,基于这些特性,使用仓颉语言的枚举类型还能实现代数表达和符号计算等高级功能。
3.1 定义

在成员函数和成员属性的声明前可以添加一些修饰符
private设置成员仅在枚举类型定义块中可见public设置成员在枚举定类型定义块内外均可见static设置成员为静态成员,只能通过枚举类型名访问,默认为实例成员,只能通过枚举实例访问在成员函数中都能引用枚举项。在实例成员函数中可以引用其他成员,在静态成员函数中只能引用静态成员。
在实例成员函数中可以使用this变量,它代表当前枚举实例,this是不可变变量。
3.2 实例化


3.3 match
枚举类型能支持我们做一些有意义的符号表达和计算,而match表达式就是连接符号和计算的核心特性。

3.4 应用


3.5 Option
在有些应用场景中,一个变量不能保证在整个生命周期内都被赋予有效值,例如计算过程中出现了异常情况,或者是在一定阶段不需要被初始化等等,为了高效且安全地表达这种“或有或无”的值,仓颉语言提供了Option类型。

四、结构体
4.1 定义


4.2 访问

4.3 应用



五、类
5.1 定义

5.2 成员访问


5.3 继承



5.4 属性

5.5 值类型与引用类型



六、接口与扩展
6.1 实现接口


6.2 扩展


七、异常

7.1 抛出

7.2 异常处理

八、并发

8.1 创建线程


8.2 估算圆周率(多线程版本)

九、跨语言

9.1 C语言

9.2 类型映射



9.3 示例

十、宏
在程序编译阶段,会产生很多有用的信息,可用于程序的分析、优化和功能扩展等。为此仓颉提供了“宏”特性,允许开发者介入编译过程,获取部分编译期信息并修改程序,可以实现埋点插桩、静态反射和语法扩展等功能。

10.1 定义


10.2 在编译时修改程序


10.3 示例

Thanks for reading!
