c++11&14
文章平均质量分 54
shuaifeng_
这个作者很懒,什么都没留下…
展开
-
c++11 多线程
1. std::threadstd::thread为C++11的线程类,使用方法和boost接口一样,非常方便,同时,C++11的std::thread解决了boost::thread中构成参数限制的问题,我想这都是得益于C++11的可变参数的设计风格。我们通过如下代码熟悉下std::thread使用风格: 1//c11.cpp 2#include<iostream> 3#include<thread> 4voidthreadfun1() 5{ 6...原创 2021-07-15 21:12:23 · 327 阅读 · 0 评论 -
c++11之STL
1. std::array其实std::array跟数组没什么区别,只是增加了迭代器的功能。2. std::forward_liststd::forward_list为c++11新增的线性表,与list区别在于它是单向链表,而list是双向链表。链表在对数据进行插入和删除是比顺序存储的线性表有优势,因此在插入和删除操作频繁的应用场景中,使用list和forward_list比使用array、vector和deque效率要高很多。3. std::unordered_mapstd::unor原创 2021-07-15 20:41:54 · 247 阅读 · 0 评论 -
C++11智能指针
简单地说,智能指针是用对象去管理一个资源指针,同时用一个计数器计算引用当前指针对象的个数,当管理指针的对象增加或减少时,计数器也相应加1或减1,当最后一个指针管理对象销毁时,计数器为1,此时在销毁指针管理对象的同时,也对指针管理对象所管理的指针进行delete操作。下面我们介绍两个常用的智能指针std::shared_ptr和std::weak_ptr。1.1 std::shared_ptrstd::shared_ptr包装了new操作符动态分配的内存,可以自由拷贝复制,基本上是使用最多的一个智原创 2021-07-15 17:56:31 · 94 阅读 · 0 评论 -
C++11常见属性
1. 常用属性1.1 auto关键字及其用法auto关键字可以用于定义变量和函数的返回值(包括声明和定义都可以),但不能用于函数形参和模板类型。示例如下: #include "stdio.h" auto add(int a, int b) { return a+b; } int main() { int a = 2, b = 3; auto c = add(a, b); fprintf(stder原创 2021-07-15 16:11:20 · 477 阅读 · 0 评论