自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

rock_joker的博客

辛勤工作的小蜜蜂

  • 博客(6)
  • 收藏
  • 关注

转载 关于C++中的虚拟继承的一些总结

1.为什么要引入虚拟继承虚拟继承是多重继承中特有的概念。虚拟基类是为解决多重继承而出现的。如:类D继承自类B1、B2,而类B1、B2都继承自类A,因此在类D中两次出现类A中的变量和函数。为了节省内存空间,可以将B1、B2对A的继承定义为虚拟继承,而A就成了虚拟基类。实现的代码如下:class Aclass B1:public virtual A;class B2:public virtual A;

2017-06-18 21:57:13 165

转载 堆排序中建堆过程的时间复杂度O(n)的证明

下面是建立大根堆的代码 [cpp] view plain copy print? template typename Type>  void CreateBigRootHeap(Type *array, int len)  {      int i, j, k;      Type temp;        for (i = (len - 1) / 2; i >

2017-06-16 12:04:57 1491

转载 面试算法之排序算法集锦

排序算法在面试过程中是经常会考的,这是很基础的,面试官觉得你应该很熟悉这些东西,如果你半个小时内写不出来,那基本就给跪了,因为这真的是狠基础狠基础的东西,所以我们得对一些基本的排序算法烂熟于胸,对这些排序思想,效率了如指掌,才能让面试官觉得你还行。基本的排序算法有:直接插入排序,冒泡排序,简单选择排序,shell排序,归并排序,快速排序,堆排序。其中归并,快速,堆排序是面试时候比较喜欢考的,因为这

2017-06-16 12:01:50 261

转载 C++静态初始化的顺序

这两天项目代码中遇到一个很疑惑的问题,问题可以描述为: 一个静态成员初始化的时候直接core 掉,该静态成员初始化时通过另外一个文件中静态成员来完成 。该问题同样发生在全局对象上。该问题可以描述为今天要讨论的: 变量的静态初始化顺序 。 具体可以用代码简述如下: //test1.cpp #include  std :: string a = "test";

2017-06-16 11:57:56 1354 1

转载 Linux下core文件调试方法

Linux下core文件调试方法 在程序不寻常退出时,内核会在当前工作目录下生成一个core文件(是一个内存映像,同时加上调试信息)。使用gdb来查看core文件,可以指示出导致程序出错的代码所在文件和行数。 1.core文件的生成开关和大小限制  (1)使用ulimit -c命令可查看core文件的生成开关。若结果为0,则表示关闭了此功能,不会生成core文件。  (2)

2017-06-16 11:56:03 228

转载 理解虚拟函数、多继承、虚继承和RTTI所需的代价

C++编译器们必须实现语言的每一个特性。这些实现的细节当然是由编译器来决定的,并且不同的编译器有不同的方法实现语言的特性。在多数情况下,你不用关心这些事情。然而有些特性的实现对对象大小和其成员函数执行速度有很大的影响,所以对于这些特性有一个基本的了解,知道编译器可能在背后做了些什么,就显得很重要。这种特性中最重要的例子是虚拟函数。 当调用一个虚拟函数时,被执行的代码必须与调用函数的对象的动态

2017-06-12 17:49:40 318

空空如也

空空如也

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

TA关注的人

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