C++11
文章平均质量分 84
关于C++11的各种新增内容简介
古月-一个C++方向的小白
人们总是认为自己未走的路充满鲜花
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++11之lambda表达式与包装器
在学习 lambda 表达式之前,可调用对象只有函数指针和仿函数对象,函数指针的类型定义起来比较麻烦,仿函数要定义⼀个类,相对会比较麻烦。如果包的是成员函数的话需要注意,由于类的成员函数的第一个参数是默认为this指针,所以function实例化的类型需要有类的对象的地址或者是对象,即使传的是对象,对象会使用。的实例对象可以包装存储其他的可以调⽤对象,包括函数指针、仿函数、 lambda 、 bind 表达式等,存储的可调用对象被称为。函数指针、仿函数、 lambda 等可调⽤对象的类型各不相同,原创 2025-07-17 16:36:27 · 982 阅读 · 0 评论
-
C++——异常
程序的执⾏从throw位置跳到与之匹配的catch模块,catch可能是同⼀函数中的⼀个局部的catch,也可能是调⽤链中另⼀个函数中的catch,控制权从throw位置转移到了catch位置。• 抛出异常后,程序暂停当前函数的执⾏,开始寻找与之匹配的catch⼦句,⾸先检查throw本⾝是否在try块内部,如果在则查找匹配的catch语句,如果有匹配的,则跳到catch的地⽅进⾏处理。捕获异常后需要重新抛出,直接。• 如果到达main函数,依旧没有找到匹配的catch⼦句,程序会调⽤标准库的。原创 2025-07-23 16:56:40 · 910 阅读 · 0 评论 -
C++11之智能指针
weak_ptr⽀持expired检查指向的资源是否过期,use_count也可获取shared_ptr的引⽤计数,weak_ptr想访问资源时,可以调⽤lock返回⼀个管理资源的shared_ptr,如果资源已经被释放,返回的shared_ptr是⼀个空对象,如果资源没有释放,则通过返回的shared_ptr访问资源是安全的。RAII在获取资源时把资源委托给⼀个对象,接着控制对资源的访问,资源在对象的⽣命周期内始终保持有效,最后在对象析构的时候释放资源,这样保障了资源的正常释放,避免资源泄漏问题。原创 2025-07-23 16:56:22 · 923 阅读 · 0 评论 -
C++11之一些小变化
默认⽣成的移动构造函数,对于内置类型成员会执⾏逐成员按字节拷贝,自定义类型成员,则需要看这个成员是否实现移动构造,如果实现了就调用移动构造,没有实现就调用拷贝构造。如果能想要限制某些默认函数的⽣成,在C++98中,是该函数设置成private,并且只声明不定义,这样只要其他⼈想要调⽤就会报错。在C++11中更简单,只需在该函数声明加上=delete即可,该语法指⽰编译器不⽣成对应函数的默认版本,称=delete修饰的函数为删除函数。假设你要使⽤某个默认的函数,但是因为⼀些原因这个函数没有默认⽣成。原创 2025-07-17 16:36:39 · 339 阅读 · 0 评论 -
C++11之emplace
STL的容器都推荐使用emplace系列,虽然不是每次插入都会比push_back效率高。但是在传递参数的时候要传对象参数包,例如注意两者的区别,对于多参数的类型,如果有{}会识别成initializer_list,这就导致emplace是无法进行识别参数类型的,所以对于多参数类型,emplace是传递的对象参数包。原创 2025-07-12 18:04:29 · 388 阅读 · 0 评论 -
C++11笑传之引用
C++11是C++继98后的更新,其更新了许多内容,是非常重要的,除了我们前文所提到的范围for和auto,还有许多新的东西,对于C++11完全可以把它当成新的语言进行学习。原创 2025-07-12 18:04:44 · 721 阅读 · 0 评论
分享