阅读量:0
编程语言中有三种描述符:
- 声明符: 表示一种动作, 比如创建变量, 定义函数等等;
- 说明符: 也就是类型说明符, 表示一种数据类型;
- 修饰符: 表示动作或类型的属性, 例如不可变……
swift语言就是严格遵循这些描述符的, 例如, @objc是修饰符 , 表示编译成OC兼容函数, func 是声明符, 表示声明一个函数, Int是说明符, 表示整数类型.
但是在c++中, 声明符往往是隐含的、省略的, 例如, 定义函数时:
int32_t Sum(int32_t a, int32_t b){ return a+b; }
这里并不需要用“func”来告诉读者, 这里要进行一个函数的声明.
又如, 定义变量时,
const int a;
这里的修饰符const和说明符int是混在一起用的. 这里其实缺失了一个声明符,来告诉读者这句代码是在声明一个变量.
但其他语言, 例如rust语言中, 就会用「let」声明符, 表示当前语句是在进行变量声明.
例如, 下述语句表示定义一个可变变量(mut表示可变的, rust中默认是不可变的).
let mut val1: i32 = 1;
rust语言中的函数声明, 则首先要用一个「fn」表示声明的是一个函数, 参数的类型则在参数名的后面, 由一个冒号+类型表示, 例如下式:
fn sum(a: i32, b:i32)->i32{ a+b }
看起来也是非常一目了然的.