自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (1)
  • 收藏
  • 关注

转载 coredump简介与coredump原因总结

coredump简介与coredump原因总结什么是coredump?通常情况下coredmp包含了程序运行时的内存,寄存器状态,堆栈指针,内存管理信息等。可以理解为把程序工作的当前状态存储成一个文件。许多程序和操作系统出错时会自动生成一个core文件。如何使用coredump?coredump可以用在很多场合,使用Linux,或者solaris的人可能都有过这

2017-10-17 17:21:17 15941

原创 boolan——c++学习笔记之设计模式三

c++设计模式总结一、设计模式的设计目标二、面向对象的手段三、八大设计原则设计模式基本上都是依据八大原则设计的。四、重构技法设计模式时的一些常用技法。五、模式分类红色圈内的几个模式现在在c++设计中已经不常用,有些由于现在c++已经有更好的方式解决问题,有些使用比较局限。六、c++对象模型所有设

2017-04-18 22:43:15 321

原创 boolan——c++学习笔记之设计模式二

对象创建模式一、工厂方法(Factory Method)二、抽象工厂(Abstract Factory)

2017-04-13 21:52:15 324

原创 boolan——c++学习笔记之设计模式一

什么是设计模式“每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复劳动”。——Christopher Alexander软件设计复杂的根本原因变化客户需求的变化技术平台的变化开发团队的变化市场环境的变化。。。如何解决复杂性?分解抽象

2017-04-05 22:55:06 363

原创 boolan——c++学习笔记之move

前言C++11提供了move语义,可以提高大大STL的效率。一、move对STL一些容器操作效率的提高下面几个图中分别对vector,deque,multiset进行拷贝构造和move构造的效率对比,可以看到move构造比拷贝构造快很多。二、一个拥有move特性的classMyString 类中有比不同string类多了一个move构造函

2017-03-30 21:59:35 828

原创 boolan——c++学习笔记之STL迭代器分类

前言c++ STL提供了多种迭代器种类,并且居然有继承关系,它用于告诉算法对于指定容器作指定的迭代器操作。一、cppreference中对Iterator category的描述二、迭代器支持的操作以及各容器所含迭代器种类1、各类迭代器支持的操作Input iterators : ==, !=, ++, *, ->                    

2017-03-23 13:06:45 341

原创 boolan——c++学习笔记之STL哈希表探究

一、简介c++STL容器unordered_set、unordered_map、unordered_multiset、unordered_multimap内部是用哈希表实现的,以下将详细介绍c++STL哈希表的实现。二、哈希表排列结构1、哈希表buckets个数大于元素个数,当元素个数大于等于buckets个数时,哈希表将rebuild,扩大buckets个数,GNU C2.9

2017-03-15 22:08:14 402

原创 boolan——c++学习笔记之容器探索

一、各类容器创建空对象时所占内存二、迭代器迭代器是算法实现容器的一个桥梁,类似于一个指针,可对容器的元素作指针的操作,比如“++”,“--”,“*”,“->”等,每个容器都有实现自己的迭代器。三、迭代器的萃取机1、迭代器内部为关联类型之上加了一个中间层——iterator traits(迭代器萃取机),用以区分传入的是类的迭代器还是单纯的类型

2017-03-09 13:17:52 348

原创 boolan——c++学习笔记之容器

一、各容器内存存储结构二、各容器特征描述(1)array创建:固定长度;存储方式:连续存储数组;访问元素:可随机访问;增减元素:不支持;(2) vector创建:不定长度,单向增长;存储方式:连续存储数组,增加元素时内存动态增加大于元素大小;访问元素:可随机访问;

2017-03-02 14:24:43 457

原创 boolan——c++学习笔记之STL简介

一、STL简介(1)六大组件:(2)六大组件之间关系:分配器给容器分配内存;算法实现容器;由迭代器做为算法和容器的桥梁;仿函数为算法提供功能;适配器对容器、仿函数、迭代器做接口转换;(3)代码示例(包含六大组件)

2017-03-02 12:43:41 318

原创 boolan——c++学习笔记之pointer-like classes

1、pointer-like classes,智能指针例子:shared_ptr2、pointer-like classes,迭代器例子:iterator

2017-02-21 21:27:25 324

原创 boolan——c++学习笔记之c++转换函数

1、conversion function(转换函数)条件: 有一个基本类型转换函数用途:把对象转成基本数据类型例子:class Fraction{public: explicit Fraction(int num, int den=1) : m_numerator(num), m_denominator(den) { cout operator doub

2017-02-21 20:31:31 302

原创 boolan——c++学习笔记之多态对象模型

c++用虚函数、虚指针、虚表的手段来实现多态,其中虚函数需要程序员手动书写,虚指针和虚表由构造对象的时候在内存中生成。下图为对象多态模型:有A、B、C三个对象,关系为B继承A、C继承B,并且每个类中有虚函数和非虚函数。(1)生成对象时如果类中有虚函数,则会在内存中生成一个虚指针,指向一个虚函数表;(2)如果父类有虚函数,子类对象继承父类的虚指针,对象中虚指针

2017-02-16 17:36:06 282

原创 boolan——c++学习笔记之类关系

类的的三种关系:1)继承(inheritance)2)复合(composition)3)委托(delegation)1)继承(inheritance)1、继承关系表现2、继承关系的构造和析构2)复合(composition)1、复合关系表现及应用场景(adapter)2、复合的构造和析构3)委托(delegation)1、委托

2017-02-08 21:02:22 422

转载 svn常用命令详解

原文  http://blog.csdn.net/prettyshuang/article/details/38421205目录(?)[-]ubuntu下安装subversion客户端检出导出导出一个干净的不带svn文件夹的目录树添加新文件 提交更新文件删除文件加锁解锁 比较差异 查看文件或者目录状态查看日志查看文件详细信息SVN 帮助查看版本库下的文件和目录列表 

2017-02-06 11:36:56 301

转载 Name Mangling in C++

摘要:详细介绍了C++中的Name Mangling的原理和gcc中对应的实现,通过程序代码和nm C++filt等工具来验证这些原理。对于详细了解程序的链接过程有一定的帮助。Name Mangling概述大型程序是通过多个模块构建而成,模块之间的关系由makefile来描述。对于由C++语言编制的大型程序而言,也是符合这个规则。程序的构建过程一般为:各个源文件分别编译,形成目标文件。

2017-02-05 17:08:52 319

转载 H264编码原理以及I帧B帧P帧

前言           H264是新一代的编码标准,以高压缩高质量和支持多种网络的流媒体传输著称,在编码方面,我理解的他的理论依据是:参照一段时间内图像的统计结果表明,在相邻几幅图像画面中,一般有差别的像素只有10%以内的点,亮度差值变化不超过2%,而色度差值的变化只有1%以内。所以对于一段变化不大图像画面,我们可以先编码出一个完整的图像帧A,随后的B帧就不编码全部图像,只写入与A帧的差别,

2017-01-22 13:53:40 1288 1

原创 boolan——c++学习笔记之内存分配

1、动态分配内存newnew过程按以下过程实现:2、动态内存释放deletedelete过程按以下过程实现:3、动态分配对象内存块以下内存块为VC 环境,红色区域表示cookie字节,用于计算内存总量用量;灰色区域表示debug字节;绿色区域表示数据;青色区域表示pad,附加字节,用于凑足16字节倍数;说明:一个矩形框4个

2017-01-21 21:20:13 335

原创 boolan——c++学习笔记1

1、头文件防御式定义;2、构造函数定义注意点,参数初始化默认值,初始化列表;3、函数参数尽量传引用、返回值返回引用需要视情况而定,如局部变量一般不返回引用;4、变量,函数内不改变成员变量,定义成const;5、友元函数,在类中把全局函数声明为友元,改全局函数可以直接访问类成员;友元函数在类中声明只是定义访问权限,需要在类外面再次声明;6、短小、快速执行的函数尽量定义为inlin

2017-01-16 21:59:02 251

转载 Mware虚拟机中的ubuntu硬盘扩容

1、通过vm的UI界面进行扩容基本上是不行的,至少在我的版本上是这样,各种灰色按钮,各种出错;并且,界面扩容失败后若打不开虚拟机,不要慌,只要你扩容之前的那个硬盘文件(我的是ubuntu64.vmdk,全编一个android项目后39G)还在,基本上是可以恢复的,一定要有耐心哟。另外,如果不是服务器级的硬盘,就不要使用快照了,感觉这个功能很坑爹,非常吃硬盘不说,关键是当它吃完你的硬盘后,你想删除快

2016-02-03 18:07:58 361

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-07-15 17:25:09 177

转载 Linux内核中双向链表的经典实现

Linux中的两个经典宏定义倘若你查看过Linux Kernel的源码,那么你对 offsetof 和 container_of 这两个宏应该不陌生。这两个宏最初是极客写出的,后来在Linux内核中被推广使用。1. offsetof1.1 offsetof介绍定义:offsetof在linux内核的include/linux/stddef.h中定义。#def

2015-07-15 17:18:06 176

Linux设备驱动开发详解:基于最新的Linux 4.0内核

Linux设备驱动开发详解:基于最新的Linux4.0内核

2018-01-24

空空如也

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

TA关注的人

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