自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 【C】堆区和栈区的区别

 一.程序内存的区域​二.堆和栈的区别一.程序内存的区域                                                                           1、栈区(stack)由编译器自动分配释放 ,存放函数的参数值,局部变量的值等,内存的分配是连续的,类似于平时我们所说的栈,如果还不清楚,那么就把它想成数组,它的...

2019-01-26 12:43:45 2494 2

原创 【C++】智能指针(后续)

上篇文章我们讲了几种智能指针原理以及实现方法,这篇文章我们主要讲一下shared_ptr的线程安全问题和循环引用问题。目录 一.线程安全问题 二.循环引用一.线程安全问题shared_ptr的线程安全问题存在两方面1.由于shared_ptr的原理是多个对象共用引用计数,那么在两个线程的智能指针同时进行++或者--操作时就会出现问题。假设引用计数的初始值是1,在两个线...

2019-01-19 16:26:53 240

原创 【C++】面向对象的三大特性

封装:封装是指将数据与具体操作的实现代码放在某个对象内部,使这些代码的实现细节不被外界发现,外界只能通过接口使用该对象,而不能通过任何形式修改对象内部实现,正是由于封装机制,程序在使用某一对象时不需要关心该对象的数据结构细节及实现操作的方法。使用封装能隐藏对象实现细节,使代码更易维护,同时因为不能直接调用、修改对象内部的私有信息,在一定程度上保证了系统安全性。继承:  继承来源于现实世...

2019-01-15 18:13:07 1062

原创 【C++】const修饰的成员函数

在日常学习中总是碰到const修饰的成员函数,自己也总是稀里糊涂的,只能是靠着编译器来区分const和非const成员函数的相互调用关系,今天在这里总结以下。一.const修饰成员函数的格式在成员函数的后边加上const void display() const { swap(5); cout << "display()" << endl;...

2019-01-14 15:43:37 3183 5

原创 【C++】智能指针

目录一.什么是智能指针?二.为什么需要智能指针??三. 思维导图​ 四.模拟实现三个智能指针1.auto_ptr 2.unique_ptr3.shared_ptrshared_ptr的线程安全问题和循环引用的解决方法下篇文章在做分享一.什么是智能指针?     智能指针包括两部分:      1.RAII          RAII(Resou...

2019-01-13 17:34:17 229

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除