- 博客(4)
- 收藏
- 关注
原创 【C++】三种智能指针(auto_ptr,unique_ptr,shared_ptr)
c++中的智能指针主要是基于RAII思想的。不懂RAII思想的同学可以看看这篇博文-->RAII思想---利用对象生命周期来控制程序资源智能指针的两大要素RAII思想:把资源交给这个对象管理 像指针一样的行为(重载operator*和operator->)template<class T>class SmartPtr{public://交给对...
2019-04-13 17:47:22 2074
原创 【Linux】vim常用命令之多行注释和多行删除
在vim中多行注释和多行删除命令,这些命令也是经常用到的一些小技巧,可以大大提高工作效率。多行注释 1. 首先按esc进入命令行模式下,按下Ctrl + v,进入列(也叫区块)模式; 2. 在行首使用上下键选择需要注释的多行; 3. 按下键盘(大写)“I”键,进入插入模式; 4. 然后输入注释符(“//”、“#”等); 5. 最后按下“Esc”键。 注:在按下es...
2019-04-12 09:10:12 4175
原创 【C语言】C语言中static关键字的作用
在C语言中static的作用如下1.在修饰变量的时候,static修饰的静态局部变量只执行一次,而且延长了局部变量的生命周期,直到程序运行结束以后才释放。2.、static修饰全局变量的时候,这个全局变量只能在本文件中访问,不能在其它文件中访问,即便是extern外部声明也不可以。3.static修饰一个函数,则这个函数的只能在本文件中调用,不能被其他文件调用。Static修饰的局部变量存...
2019-04-11 13:13:55 442
原创 【C++】RAII思想---利用对象生命周期来控制程序资源
C语言中我们学过指针,那么为什么在C++中还需要存在智能指针呢?实际上它的出现就是给c++的内存管理“填坑”来的~ 因为它的内存自己管理,所以说,有的时候使用malloc或者new创建的对象忘记释放就会导致内存泄漏,又或者此时释放语句之前有一段代码是抛异常的话,那么执行流就会乱跳,导致内存也无法释放。比如这一段代码,若n太大,开辟空间失败会抛异常,导致执行流跳出没有释放指针p。void...
2019-04-10 09:35:22 856
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人