C++20
文章平均质量分 92
神奇的小强
中华技术研究所1024实验室神风作战组
展开
-
现代C++新特性 强枚举类型(PC浏览效果更佳)
文字版PDF文档链接:现代C++新特性(文字版)-C++文档类资源-CSDN下载 C++之父本贾尼·斯特劳斯特卢普曾经在他的The Design And Evolution Of C++一书中写道“C enumerations constitute a curiously half-baked concept.”。翻译过来就是“C语言的枚举类型构成了一个奇怪且半生不熟的概念”,可见这位C++之父对于enum 类型的现状是不满意的,主要原因是enum类型破坏了C++的类型安全。大多数情况下,我们说C++是一门原创 2022-06-20 22:37:19 · 441 阅读 · 0 评论 -
现代C++新特性 继承构造函数
文字版PDF文档链接:现代C++新特性(文字版)-C++文档类资源-CSDN下载 1.继承关系中构造函数的困局相信读者在编程经历中一定遇到过下面的问题,假设现在有一个类Base提供了很多不同的构造函数。某一天,你发现Base无法满足未来业务需求,需要把Base作为基类派生出一个新类Derived并且对某些函数进行改造以满足未来新的业务需求,比如下面的代码:基类Base的SomeFunc无法满足当前的业务需求,于是在其派生类Derived中重写了这个函数,但令人头痛的是,面对Base中大量的构造函数,我原创 2022-06-03 22:34:22 · 186 阅读 · 0 评论 -
现代C++新特性 委托构造函数
文字版PDF文档链接:现代C++新特性(文字版)-C++文档类资源-CSDN下载1.冗余的构造函一个类有多个不同的构造函数在C++中是很常见的,例如:class X {public: X() : a_(0), b_(0.) { CommonInit(); } X(int a) : a_(a), b_(0.) { CommonInit(); } X(double b) : a_(0), ...原创 2022-04-17 22:11:15 · 988 阅读 · 0 评论 -
现代C++新特性 非受限联合类型
文字版PDF文档链接:现代C++新特性(文字版)-C++文档类资源-CSDN下载1.联合类型在C++中的局限在编程的问题中,用尽量少的内存做尽可能多的事情一直都是一个重要的课题。C++中的联合类型(union)可以说是节约内存的一个典型代表。因为在联合类型中多个对象可以共享一片内存,相应的这片内存也只能由一个对象使用,例如:#include <iostream> union U { int x1; float x2;};int main(int...原创 2022-04-15 21:18:31 · 607 阅读 · 0 评论 -
现代C++新特性 默认和删除函数
文字版PDF文档链接:现代C++新特性(文字版)-C++文档类资源-CSDN下载1.类的特殊成员函数在定义一个类的时候,我们可能会省略类的构造函数,因为C++标准规定,在没有自定义构造函数的情况下,编译器会为类添加默认的构造函数。像这样有特殊待遇的成员函数一共有6个(C++11以前是4 个),具体如下。1.默认构造函数。2.析构函数。3.复制构造函数。4.复制赋值运算符函数。5.移动构造函数(C++11新增)。6.移动赋值运算符函数(C++11新...原创 2022-04-01 21:31:58 · 1701 阅读 · 0 评论 -
现代C++新特性 列表初始化
文字版PDF文档链接:现代C++新特性(文字版)-C++文档类资源-CSDN下载1.回顾变量初始化在介绍列表初始化之前,让我们先回顾一下初始化变量的传统方法。其中常见的是使用括号和等号在变量声明时对其初始化,例如:struct C { C(int a) {}};int main(int argc, char** argv){ int x = 5; int x1(8); C x2 = 4; C x3(4); retu...原创 2022-03-31 22:59:14 · 1539 阅读 · 0 评论 -
现代C++新特性 非静态数据成员默认初始化
文字版PDF文档链接:现代C++新特性(文字版)-C++文档类资源-CSDN下载1.使用默认初始化在C++11以前,对非静态数据成员初始化需要用到初始化列表,当类的数据成员和构造函数较多时,编写构造函数会是一个令人头痛的问题:class X {public: X() : a_(0), b_(0.), c_("hello world") {} X(int a) : a_(a), b_(0.), c_("hello world") {} X(double ...原创 2022-03-31 00:13:53 · 1323 阅读 · 1 评论