自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 纯虚函数

纯虚函数声明:virtual 函数名(参数列表) = 0;纯虚函数的作用:是在基类中为其派生类保留一个函数的名字,以便派生类根据需要对他进行定义。如果在基类中没有保留函数名字,则无法实现多态性。注意:纯虚函数没有实现体,不具备函数的功能,不能被调用。最后面的=0,只起形式上的作用,告诉编译器这是“纯虚函数”。如果在一个类中声明了纯虚函数,在其派生类中没有对其函数进行定义,则该虚函数在派...

2019-04-15 21:17:51 468

原创 单例模式

https://blog.csdn.net/qq_36403434/article/details/79153094

2019-04-15 19:59:38 106

原创 C++中的虚析构函数的理解

虚析构函数:当一个类被定义为基类时,把它的析构函数设置为虚析构函数。问题:什么时候要用虚析构函数?答案:通过基类指针来删除派生类对象的时候,基类的析构函数应设置为虚函数。这样做是为了当有一个基类的指针删除一个派生类对象时,派生类对象的析构函数会被调用。原因:析构函数调用时先调用派生类的析构函数,其次调用基类的析构函数。如果析构函数不是虚函数,而又通过基类的指针去销毁派生类的对象,那么dele...

2019-04-14 22:37:58 162

原创 C++中的虚函数

一、概述     每一个含有虚函数的类(无论是自身还是继承过来的,基类中是虚函数,派生类中同名且类型相同的函数也是虚函数),都至少有一个与之对应的虚函数表,其中存放着该类所有虚函数对应的函数指针。class Base{public: Base(int a):ma(a) { std::cout<<"Base::Base()"<...

2019-04-09 20:38:08 92

原创 线程基础

一、线程的概念进程内部的一条执行序列(执行流)二、线程的实现方式

2019-04-08 19:44:19 98

原创 C++写时拷贝技术

写时拷贝:就是在写的时候(修改字符串的时)才会进行真正的空间分配,在只读的情况下,数据进行浅拷贝。写时拷贝技术就是引用计数器的浅拷贝,是通过“引用计数”实现的,在分配空间的时候多分配4个字节,用来记录有多少个指针指向这块空间。当有新的指针指向这块空间时,引用计数加1;当要释放这块空间时,仅引用计数减1,直到引用计数减为0(即最后一个指向这块内存的指针要释放)才真正释放掉这块空间;当...

2019-04-08 16:45:57 205

原创 进程间通讯

一、进程通信概念    进程是操作系统的概念,每当我们执行一个程序,对于操作系统来说就创建了一个进程,在这个过程中包括资源的分配和释放。进程用户空间是独立的,一般不能相互访问。但很多情况下,进程之间需要相互通信来完成某些功能,进程通过与内核和其它进程之间的通信来协调它们之间的行为。二、进程通信应用场景数据传输:一个进程需要将自己的数据发送给别的进程。...

2019-04-06 20:02:25 67

原创 消息队列

一、概念消息队列是发送带有类型的数据的机制,读取数据的进程可以根据类型获得特定的数据,并在这一类型上遵循先进先出的规则。比起管道它不需要固定进程的只读和只写,通信间的进程都可以读写,支持多个进程。二、具体操作在Linux中使用消息队列     进程间要完成通信至少要有一个可以让进程共享的标记,在消息队列中用到内核对象,内核对象是内核空间创...

2019-04-06 19:58:27 106

原创 信号量

一、几个基本概念原子操作:不可中断的操作,一旦操作开始执行,就不能停止,直到其运行终止。临界资源:同一时刻,只能被一个进程访问的资源。临界区:在程序中访问临界资源的代码区域。进程同步:一个进程需要等待另一个进程某些条件的发生,才能接着运行,是一种合作的关系。进程异步:两个或两个以上进程互不干涉,相互不影响,是独立运行的个体。信号量:是做进程间同步控制的记录资源数量的一个计数器。信号量...

2019-04-06 19:57:50 111

原创 共享内存

一、概念系统上的每个进程都有4G的虚拟地址空间,二真实的物理空间都是独立的在物理内存上找一块空间,使得多个进程可以访问这块空间,这就是共享内存。进程共享一个内存,如图:1、创建内核对象,并且申请物理内存;2、各进程中,分别将自己的虚拟地址通过内核对象映射到开辟的物理内存上;3、分别访问这块内存,通过各自的指针ptra、ptrb;4、断开链接,将虚拟地址与物理内存断开联系;5、删除内...

2019-04-06 19:55:01 407

原创 管道

管道:有名管道、无名管道1 .有名管道(FIFO文件/命名管道)    通常应用于任意两个进程间的通讯,它是一种特殊的文件,在磁盘上有一个文件标识,创建管道文件,但是,交互的数据并不会存储到磁盘中,管道文件不会占据磁盘空间。注:A、B两个进程通过管道文件(文件系统)访问内存上的同一块空间。//创建管道文件: 命令: mkfifo filen...

2019-04-05 21:46:13 110

空空如也

空空如也

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

TA关注的人

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