栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

类型别名--type alias

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

类型别名--type alias

        C++11中引入了新的类型别名定义方式

using identifier = type-id

         曾经在C++中定义类型的别名是采用

typedef identifier type-id;

        如果对于通常状况下的类型进行别名声明,两种方式没有区别,可能C++11新引入的方式比较容易理解 。传统的typedef可能会将原类型和新类型的位置弄混,采用=类似于赋值操作更好理解。


        别名模板        类型别名可以用于隐藏模板参数

// 这里PRT为const char*
template 
using PTR = T*;
PTR str = "Hello World!";

// 少写几个int参数
template
struct Alloc { };
template
using Vec = vector>; // type-id is vector>
Vec v; // Vec is the same as vector>

        别名模板不能用自身的类型

template
struct A;
template
using B = typename A::U; // type-id is A::U
template
struct A { typedef B U; };
B b; // error: B uses its own type via A::U

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/317607.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号