C++(31)——C++11常用知识点整理

前言

C++11在如今的公司开发过程中,C++11的代码形式和一些优秀的开源代码中,都会使用到C++11的一些特性,使得代码更加简洁,逻辑更加清楚。
C++11的新标准很多,但是对于开发者来说,我们不一定会都使用到,本文主要总结一下之前的编码过程中高频出现的的内容。

关键字与语法方面

  • auto:可以根据右值,推导出右值的类型,然后左边变量的类型也就已知了
  • nullptr:给指针专用(能够和整数进行区别)以前的NULL是一种宏定义,即#difine NULL 0,我们在代码中其实是无法区分整数和地址,有了nullptr就方便了我们的区分。
  • foreach:可以遍历数组,容器等(底层通过指针或者迭代器来实现)
for(Type val: container)
{
	cout << val << " ";
}
  • 右值引用:move移动语义函数和forward类型完美转发函数
  • 模板的一个新特性:typename… A表示可变参(类型参数)

绑定器和函数对象

这一部分读者可以查看我之前的博客:

  • function:函数对象
  • bind:绑定器 bind1st和bind2nd + 二元函数对象 ==>一元函数对象
  • lambda表达式

智能指针

shared_ptrweak_ptr

容器

setmap:红黑树O(log2n)
unordered_setunordered_map:哈希表O(1)
array:数组 vector
forward_list:前向链表 list

C++语言级别支持的多线程编程

这一部分请关注我的下一篇博客。

  • 代码可以跨平台运行
  • thread/mutex/condition_variable
  • lock_quard/unique_lock
  • atomic:原子类型,基于CAS操作的原子类型,线程是安全的
  • sleep_for
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值