typedef

本文介绍了C/C++中的typedef关键字,用于声明类型别名。文章详细阐述了typedef的限制,如不可类型扩展,const与typedef的特殊处理,以及不能与除类型指定符外的指定符组合。接着,列举了typedef的常见应用,包括重命名长类型名称,简化C风格struct的使用,以及其他实用场景。特别地,讨论了在C++中,编译器如何处理不完整类型的定义。
摘要由CSDN通过智能技术生成
前言

typedef 是一个c/c++关键字用来声明类型别名,既然它只是一个类型别名,那么我们就不能对其进行类型扩展。

typedef 限制
不可类型扩展

下面使用会编译报错是错误用法

typedef int Int;
long Int a = 1;
const 与 typedef

给 typedef 加 const 相当于给类型本身加const ,而不是简单的组合,如下我们给下面的代码加const,简单的组合起来就像 const char* ,但是实际上则是给指针本身加了const,使 str 成为 char* const 类型

typdef char* PointerChar;
const PointerChar  str = "hello";
str++; 
typedef 不可与除类型指定符之外的指定符组合

指定符就是c/c++关键字,typedef 只能与 类型指定符组合,不可与其他指定符组合,指定符分类如下

  • typedef
  • inline
  • friend
  • constexpr
  • 存储类指定符(register 、static 、 thread_local (C++11 起)、 extern 、 mutable )
  • 类型指定符 (各种内置类型、class、struct、cv限定符、typename)
  • </
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值