C++之type traits

目录

  • 帮助类
    • std::integral_constant
    • bool_constant
  • 主要类型分类
    • std::is_void
    • is_null_pointer
    • is_integral
    • is_floating_point
    • is_array
    • is_enum
    • is_union
    • is_class
    • is_function
    • is_pointer
    • is_lvalue_reference
    • is_rvalue_reference
    • is_member_object_pointer
    • is_member_function_pointer
  • 组合类型分类
    • is_fundamental
    • is_arithmetic
    • is_scalar
    • is_object
    • is_compound
    • is_reference
    • is_member_pointer
  • 类型属性
    • is_const
    • is_volatile
    • is_trivial
    • is_trivially_copyable
    • is_standard_layout
    • is_empty
    • is_polymorphic
    • is_abstract
    • is_final
    • is_aggregate
    • is_signed
    • is_unsigned
  • 支持的操作
    • 构造
    • 析构
    • 拷贝构造
    • 移动构造
    • 特定参数的赋值运算符
    • 拷贝赋值运操作
    • 移动赋值操作
    • 是否有未删除的析构
    • 是否有虚析构
  • 属性查询
    • alignment_of
    • rank
    • extent
  • 类型关系
    • is_same
    • is_base_of
    • is_convertible/is_nothrow_convertible
  • Const-volatility属性
    • 删除cv属性
    • 添加cv属性
  • 引用
    • remove_reference
    • add_lvalue_reference
    • add_rvalue_reference
  • 指针
    • remove_pointer
    • add_pointer
  • 符号修饰符
    • make_signed
    • make_unsigned
  • 数组
    • remove_extent
    • remove_all_extents
  • 不同类型转换
    • aligned_storage
    • aligned_union
    • decay
    • remove_cvref
    • enable_if
    • conditional
    • common_type
    • underlying_type

Type traits在C++中,尤其是模板中应用极为广泛。头文件: #include<type_traits>

帮助类

std::integral_constant

bool_constant

主要类型分类

std::is_void

is_null_pointer

is_integral

is_floating_point

is_array

is_enum

is_union

is_class

is_function

is_pointer

is_lvalue_reference

is_rvalue_reference

is_member_object_pointer

is_member_function_pointer

组合类型分类

is_fundamental

is_arithmetic

is_scalar

is_object

is_compound

is_reference

is_member_pointer

类型属性

is_const

is_volatile

is_trivial

is_trivially_copyable

is_standard_layout

is_empty

is_polymorphic

is_abstract

is_final

is_aggregate

is_signed

is_unsigned

支持的操作

构造

is_constructible
is_trivially_constructible
is_nothrow_constructible

析构

is_default_constructible
is_trivially_default_constructible
is_nothrow_default_constructible

拷贝构造

is_copy_constructible
is_trivially_copy_constructible
is_nothrow_copy_constructible

移动构造

is_move_constructible
is_trivially_move_constructible
is_nothrow_move_constructible

特定参数的赋值运算符

is_assignable
is_trivially_assignable
is_nothrow_assignable

拷贝赋值运操作

is_copy_assignable
is_trivially_copy_assignable
is_nothrow_copy_assignable

移动赋值操作

is_move_assignable
is_trivially_move_assignable
is_nothrow_move_assignable

是否有未删除的析构

is_destructible
is_trivially_destructible
is_nothrow_destructible

是否有虚析构

has_virtual_destructor

属性查询

alignment_of

rank

extent

类型关系

is_same

is_base_of

is_convertible/is_nothrow_convertible

Const-volatility属性

删除cv属性

remove_cv
remove_const
remove_volatile

添加cv属性

add_cv
add_const
add_volatile

引用

remove_reference

add_lvalue_reference

add_rvalue_reference

指针

remove_pointer

add_pointer

符号修饰符

make_signed

make_unsigned

数组

remove_extent

remove_all_extents

不同类型转换

aligned_storage

aligned_union

decay

remove_cvref

enable_if

conditional

common_type

underlying_type

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/151210.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

rpc依赖安装

依赖&#xff1a; 0、boost&#xff1a;用于实现多线程等&#xff1b; 1、protobuf&#xff1a;用于实现数据的序列化、反序列化&#xff0c;也用于定义和生成rpc数据及接口&#xff1b; 2、libevent&#xff1a;用于实现基于IO多路复用机制的网络事件循环。 其实可以直接用包…

JAVA sql 查询

-- 1. 查询员工表所有数据&#xff0c;并说明使用*的缺点 SELECT * from employees -- *号查询效率低 -- 2. 查询所员工的 email 全名,公司 email 统一以 "qq.com " 结尾. SELECT email from employees WHERE email like "%qq.com" -- 3. 打印公司里…

庖丁解牛:NIO核心概念与机制详解 06 _ 连网和异步 I/O

文章目录 Pre概述异步 I/OSelectors打开一个 ServerSocketChannel选择键内部循环监听新连接接受新的连接删除处理过的 SelectionKey传入的 I/O回到主循环 Pre 庖丁解牛&#xff1a;NIO核心概念与机制详解 01 庖丁解牛&#xff1a;NIO核心概念与机制详解 02 _ 缓冲区的细节实现…

Go基础面经大全(持续补充中)

Go基础 1. 基础特性 Go的优势 天生支持并发&#xff0c;性能高。 单一的标准代码格式&#xff0c;比其他语言更具可读性。 自动垃圾收集机制比Java和Python更有效&#xff0c;因为它与程序同时执行。 Go数据类型 int, string, float, bool, array, slice, map, channel, p…

如何将本地Portainer管理界面结合cpolar内网穿透工具实现远程浏览器访问

文章目录 前言1. 部署Portainer2. 本地访问Portainer3. Linux 安装cpolar4. 配置Portainer 公网访问地址5. 公网远程访问Portainer6. 固定Portainer公网地址 前言 Portainer 是一个轻量级的容器管理工具&#xff0c;可以通过 Web 界面对 Docker 容器进行管理和监控。它提供了可…

Android修行手册-POI操作中文API文档

Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff0c;以及各种资源分…

LLM模型-讯飞星火与百度文心api调用

spark-wenxin 1-讯飞星火1_1-SparkApi.py1_2- Chat_spark.py1_3-调用api 2-百度文心2_1.code 3-两者之间比较与openai 1-讯飞星火 进入讯飞官网进行创建应用&#xff0c;获取相关密钥APPID&#xff0c;APISecret&#xff0c;APIKey&#xff0c;选择最新版本 首次调用讯飞官方a…

redis三种集群方式

redis有三种集群方式&#xff1a;主从复制&#xff0c;哨兵模式和集群。 1.主从复制 主从复制原理&#xff1a; 从服务器连接主服务器&#xff0c;发送SYNC命令&#xff1b; 主服务器接收到SYNC命名后&#xff0c;开始执行BGSAVE命令生成RDB文件并使用缓冲区记录此后执行的所…

Git的简单使用

Git的简介 Git是一个分布式版本控制工具&#xff0c;通常用来对软件开发过程中的源代码文件进行管理。通过Git仓库来存储和管理这些文件&#xff0c;Git仓库分为两种&#xff0c;一个是本地仓库&#xff1a;开发人员自己电脑上的Git仓库&#xff0c;一个是远程仓库&#xff1a;…

centos FreeXL源码编译

安装、编译 https://www.gaia-gis.it/gaia-sins/freexl-2.0.0.zip wget https://www.gaia-gis.it/gaia-sins/freexl-2.0.0.zip#centos yum install -y minizip minizip-devel expat-devel ./configure --prefix/usr/local/freexl-2.0.0#Ubuntu apt install libminizip libmin…

学习c#的第十六天

目录 C# 正则表达式 定义正则表达式 字符转义 字符类 定位点 分组构造 Lookaround 概览 数量词 反向引用构造 替换构造 替代 正则表达式选项 其他构造 Regex 类 代码示例 实例 1 实例 2 实例 3 C# 正则表达式 正则表达式 是一种匹配输入文本的模式。.Net 框…

PHP比较漏洞, 代码审计, 字符串数字, “0e“字符串, 布尔值比较, 极限值, switch比较, in_array比较

PHP比较漏洞 一, 字符串与数字比较,0e’字符串比较 在 PHP 中处理字符串和数字比较时需要小心谨慎的重要性&#xff0c;尤其是在安全敏感的应用中。 在某些情况下&#xff0c;PHP 的类型强制转换可能会导致意外和潜在的安全漏洞。 var_dump("admin" 0); //true …

RecyclerView嵌套布局,导致RecyclerView复用失效 解决

前言&#xff1a;使用NestedScrollView嵌套RecyclerView。 解决步骤一&#xff1a;固定高度 NestedScrollView嵌套RecyclerView时&#xff0c;RecyclerView的高度是无限大&#xff0c;所以要将RecyclerView设置固定高度。在代码中固定的&#xff0c;灵活度更高。 binding.nest…

键盘方向键移动当前选中的table单元格,并可以输入内容

有类似于这样的表格&#xff0c;用的<table>标签。原本要在单元格的文本框里面输入内容&#xff0c;需要用鼠标一个一个去点以获取焦点&#xff0c;现在需要不用鼠标选中&#xff0c;直接用键盘的上下左右来移动当前正在输入的单元格文本框。 const currentCell React.u…

【数据结构初阶】单链表SLlist

描述 不同于顺序表&#xff0c;顺序表的数据是存储在一个连续的空间里的 而链表它是链接起来的结构体地址。 所以我们不用像顺序表一样先创建一块空间出来&#xff0c;而是创建一个能存数据节点和节点与下一个节点之间的连接&#xff1b; 所以&#xff1a;“一个能存数据节点…

词向量笔记

一、词向量的世界排名比赛MTEB MTEB: Massive Text Embedding Benchmark 二、词向量的维数 词向量的维数d1一般取20~500之间

百分点科技|怎样做数据运营,才能让数据中台真正用起来?

导读&#xff1a;大多数企业用户已完成数据平台初步建设工作&#xff0c;但数据在业务运营和管理中没有发挥应有价值。数据开发工作繁重&#xff0c;数据质量问题严重&#xff0c;IT、数据和业务协作不畅&#xff0c;诸多问题依然困扰着企业用户的IT部门和数据部门。数据运营成…

起立科技(起鸿)在第25届高交会上展示透明OLED技术创新

第二十五届中国国际高新技术成果交易会 日期&#xff1a;2023年11月15日 地点&#xff1a;福田会展中心7号馆 深圳&#xff0c;2023年11月15日 — 起鸿科技&#xff0c;作为透明OLED领域的引领者&#xff0c;于今日参展了第二十五届中国国际高新技术成果交易会。这一展会将汇…

『亚马逊云科技产品测评』活动征文|通过lightsail一键搭建Drupal VS 手动部署

『亚马逊云科技产品测评』活动征文&#xff5c;通过lightsail一键搭建Drupal 提示&#xff1a;授权声明&#xff1a;本篇文章授权活动官方亚马逊云科技文章转发、改写权&#xff0c;包括不限于在 Developer Centre, 知乎&#xff0c;自媒体平台&#xff0c;第三方开发者媒体等亚…

微服务架构中的 熔断和降级

文章目录 熔断判定服务的健康状态服务恢复正常 降级跨服务降级自身服务提供有损服务具体案例分析 熔断 微服务架构中&#xff0c;如果需要保障可用性&#xff0c;其中一个方式就是 熔断。熔断在微服务架构里面是指 当微服务本身出现问题的时候&#xff0c;它会拒绝新的请求&am…