2-5 C++ 类型别名与自动类型
2.5.1 类型别名(Type Alias)
typedef#
-
语法
typedef double wages; //wages 是 double的别名 typedef char * pstring; //ptring 是 char *的别名
-
注意点:const修饰符修饰指针本身
const pstring p = &c; //此处的const修饰指针,是一个"Top-Level const",即p不能改变指向的对象 const char *p; //此处的const修饰char,是一个”Low-Level const",无法通过p改变指向对象的值
using#
-
语法
using wages = double; using ptring = char *;
-
注意点:同上
2.5.2 auto类型说明符
基本说明#
auto a = 0;
-
auto
会给a
赋予右值的数据类型:可以理解为auto
被替换为了右值的类型 -
auto变量必须初始化
-
定义多变量时,各变量的定义(definition)中的基本类型(the base type)部分要一致
int a = 0; auto i = a, p = 3.14; //auto的类型不一致
注意点#
2.5.3 decltype类型说明符
基本说明#
const int ci = 0, &cj = ci;
decltype(ci) x = 0; //x为const int
decltype(cj) y = x; //y为const int的引用
decltype(ci) z; //error:z未初始化!!
- decltype作用同auto
- decltype变量必须初始化
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用