文章 2023-12-28 来自:开发者社区

【C++11特性篇】C++11中新增的initializer_list——初始化的小利器(2)

一.探究std::initializer_list是什么?我们观察下面代码:根据输出结果“the type of il is an initializer_list”,我们可以知道 initializer_list是作为参数的构造函数int main() { auto il = { 10, 20, 30 }; cout << typeid(il).name() <...

【C++11特性篇】C++11中新增的initializer_list——初始化的小利器(2)
文章 2023-09-22 来自:开发者社区

【c++11】c++11特性

c++11简介从C++0x到C++11,C++标准10年磨一剑,第二个真正意义上的标准珊珊来迟。相比于C++98/03,C++11则带来了数量可观的变化,其中包含了约140个新特性,以及对C++03标准中约600个缺陷的修正,这使得C++11更像是从C++98/03中孕育出的一种新语言。相比较而言,C++11能更好地用于系统开发和库开发、语法更加泛华和简单化、更加稳定和安全,不仅功能更强大,而且....

【c++11】c++11特性
文章 2023-08-02 来自:开发者社区

2023-4-6-C++11、C++14、C++17、C++20版本新特性系统全面的学习!(四)

例如:#include <optional> #include <iostream> int main() { std::optional<int> opt; int i = opt.value_or(42); // 使用提供的默认值获取 optional 中的值 std::cout << "The value of opt...

文章 2023-08-02 来自:开发者社区

2023-4-6-C++11、C++14、C++17、C++20版本新特性系统全面的学习!(三)

正则表达式正则表达式(Regular Expression,常简写为regex、regexp或RE)。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。C++11开始支持正则表达式。正则表达式非常强大,具体的实现算法有差异,所以会有多种实现方式。C++11支持6种正则表达式引擎。ECMAScript 是其中支持最多元素的引擎,也是regex默认支持的引擎。ECMAScriptbasi....

2023-4-6-C++11、C++14、C++17、C++20版本新特性系统全面的学习!(三)
文章 2023-08-02 来自:开发者社区

2023-4-6-C++11、C++14、C++17、C++20版本新特性系统全面的学习!(二)

智能指针c++11引入了三种智能指针:std::shared_ptrstd::weak_ptrstd::unique_ptrshared_ptrshared_ptr使用了引用计数,每一个shared_ptr的拷贝都指向相同的内存,每次拷贝都会触发引用计数+1,每次生命周期结束析构的时候引用计数-1,在最后一个shared_ptr析构的时候,内存才会释放。智能指针还可以自定义删除器,在引用计数为0....

2023-4-6-C++11、C++14、C++17、C++20版本新特性系统全面的学习!(二)
文章 2023-08-02 来自:开发者社区

2023-4-6-C++11、C++14、C++17、C++20版本新特性系统全面的学习!(一)

一、C++历史版本编年史年份C++标准通用名1978C with Classes-1998ISO/IEC 14882:1998C++982003ISO/IEC 14882:2003C++032011ISO/IEC 14882:2011C++112014ISO/IEC 14882:2014C++142017ISO/IEC 14882:2017C++172020ISO/IEC 14882:2020C....

2023-4-6-C++11、C++14、C++17、C++20版本新特性系统全面的学习!(一)
文章 2023-07-24 来自:开发者社区

【C++11】C++11新特性

@TOC 1. C++11简介 在2003年C++标准委员会曾经提交了一份技术勘误表(简称TC1),使得C++03这个名字已经取代了C++98称为C++11之前的最新C++标准名称。不过由于C++03(TC1)主要是对C++98标准中的漏洞进行修复,语言的核心部分则没有改动,因此人们习惯性的把两个标准合并称为C++98/03标准。从C++0x到C++11,C++标准10年磨一剑,第...

【C++11】C++11新特性
文章 2023-05-18 来自:开发者社区

引用、 内联函数 、auto关键字(C++11)、基于范围的for循环(C++11)、指针空值---nullptr(C++12)(下)

3. auto关键字(C++11)3.1 类型别名思考随着程序越来越复杂,程序中用到的类型也越来越复杂,经常体现在:1. 类型难于拼写2. 含义不明确导致容易出错int main() { std::map<std::string, std::string> m{ { "apple", "苹果" }, { "orange", "橙子" }, {"pear","梨"} };...

文章 2023-05-18 来自:开发者社区

引用、 内联函数 、auto关键字(C++11)、基于范围的for循环(C++11)、指针空值---nullptr(C++11)(上)

1:引用1.1引用的概念: &nbsp; &nbsp; 引用不是新定义一个变量,而是给已存在变量取了一个别名,编译器不会为引用变量开辟内存空间,它和它引用的变量共用同一块内存空间。类型&amp; 引用变量名(对象名) = 引用实体;void TestRef() { int a = 10; int&amp; ra = a;//&lt;====定义引用类型 printf("%p\n", &amp;am...

引用、 内联函数 、auto关键字(C++11)、基于范围的for循环(C++11)、指针空值---nullptr(C++11)(上)
文章 2023-05-07 来自:开发者社区

【C++11】C++多线程之条件变量,异步启动任务(1)

前言条件变量以及异步任务(1)提示:以下是本篇文章正文内容,下面案例可供参考一、condition_varible定义一个条件变量condition_varible v;1、condition_varible的使用1).condition_varible::wait等待notify_one 唤醒执行参数2,如果为true,则继续执行下面的代码,如果为false则继续等待下一次参数1:unique....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

开发与运维

集结各类场景实战经验,助你开发运维畅行无忧

+关注