typedef
用于给已有的类型创建别名,适用于类型的重命名。它可以用于基本类型、结构体、指针、函数指针、模板等。
typedef int tt; // 给 int 创建别名 tt
tt a = 10; // 相当于 int a = 10;
typedef
创建的别名会进行类型检查,因此它是类型安全的。
using
语法是 C++11 引入的,用于创建类型别名,语法更简洁。它与 typedef
功能类似,但语法上更清晰,也能用于模板类型别名。
using tt = int; // 给 int 创建别名 tt
tt a = 10; // 相当于 int a = 10;
#define
是 C 语言和 C++ 中的预处理指令,用于定义宏(常量、代码片段等)。它在编译前进行文本替换,不会进行类型检查。
#define PI 3.14159 // 定义常量 PI
float area = PI * r * r; // 编译前会将 PI 替换为 3.14159