自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hustyangju的足迹

Stay Hungry,Stay Foolish

  • 博客(20)
  • 资源 (2)
  • 收藏
  • 关注

原创 effective c++条款10-12(operator=(重载返回类型、自我赋值和深层复制))整理

一、重载operator=返回类型下面举例说明,operator=类似。针对:ostream & operator 说明几点:1.第一个形参为对ostream对象的引用,在该对象上将产生输出,ostream为非const,因为写入到流会改变流的状态;该形参是一个引用,因为不能复制ostream对象(在c++中定义的标准输入输出流类istream和ostream,其中拷贝构造函数和赋

2014-11-30 17:11:06 1324

原创 effective c++ 条款07(为多态基类声明virtual析构函数)整理

一、虚函数表原理陈皓的一篇blog讲的很透彻:http://blog.csdn.net/haoel/article/details/1948051/虚函数表可以分为:单一继承无虚函数覆盖、单一继承有虚函数覆盖、多重继承无虚函数覆盖和多重继承和有虚函数覆盖。注意与虚拟继承区分开来二、多态实现原理多态则是通过继承、虚函数(virtual)、指针来实现。

2014-11-27 16:15:10 964

原创 effective c++ 条款05、06(编译器自动生成函数)整理

一、编译器为空类生成函数的原型以及函数创建的时机在C++中当创建一个空类时,C++就会默认的为这个类创建4个函数:默认的构造函数、析构函数、拷贝构造函数、以及赋值操作符。C++中创建一个空类:class Empty {};默认会生成4个函数,其函数的原型如下:public:    Empty() { ... }    Empty(const Empty& rhs) {

2014-11-27 11:22:01 1029

原创 effective c++ 条款 04 (对象初始化)整理

确定对象使用前已被初始化原则:不论是类的成员变量还是其他作用域的变量,使用前都要保证已被初始化(或者说赋值)一、无任何成员的内置类型初始化/*内置类型通过复制完成初始化*/int x = 0;const char* a = "abc";int a[2] = {0,0};二、STL容器初始化STL容器关注容器大小,防止越界,初始化的工作不用关心三、类成员变量初始化

2014-11-27 10:04:14 923

原创 effective c++ 条款03 整理

尽可能使用const(1)const约束指针、迭代器const char* p = "adc"; //non-const pointer,const datachar* const p = "abc"; //const pointer,non-const dataconst char* const p = "abc";//const pointer,const dataconst s

2014-11-26 20:19:25 760

原创 effective c++ 条款02 整理

尽量以const、enum和inline代替#define一、#define的功能参考:http://www.crifan.com/_define_detailed/(1) #define的变体,即#ifndef,可以防止头头文件的重复引用#ifdef和 #define组合,一般用于头文件中,用以实现防止多个文件对此同一个头文件的重复引用.实际使用中,即使你的头文件暂时没有被多个文

2014-11-26 19:36:50 1402

原创 effective c++ 条款01 整理

书中将C++划分为4个次语言,期望将混乱的C++体系进行简单的梳理,只能说目的达到了,但这么分合适不合适呢?不知道....(1)C(C++ without class)初级C++确实是对C的延生,这也涉及到C++是否应该严格兼容C的问题,历史问题不去评判,但这是事实。(2)面向对象C++(Object-Oriented C++)涉及到类、封装、继承、多态和虚拟(动态绑定)机制,这也

2014-11-26 16:39:15 870

转载 hash实现--开放寻址方式

原文:http://blog.csdn.net/aa2010aa/article/details/4908113

2014-11-25 10:12:10 1372 1

原创 号被盗了

周末没有登录博客,周一发现账号被盗了!!改了密码,还修改了邮箱!!我只能说: 你太看得起我了,我认真写博客,你是心动了?还有,CSDN可是IT博客,一家以IT起家立命的公司居然保护不了用户的隐私和信息安全!!!这两次异常登录的IP 是哪里的?找出来保证不打死你!!最后在客服的帮助下重设了密码,但我感觉CSDN的账号保护形同虚设,很鸡肋!!

2014-11-25 09:09:56 1198 1

原创 如何使用随机数函数

srand函数是随机数发生器的初始化函数,原型: void srand(unsigned seed); 它需要提供一个种子,如: srand(1); 直接使用1来初始化种子。 不过常常使用系统时间来初始化,即使用 time函数来获得系统时间,它的返回值为从 00:00:00 GMT, January 1, 1970 到现在所持续的秒数,然后将time_t型数

2014-11-24 03:24:16 1607

原创 《github一天一道算法题》:快速排序和随机快速排序

看书、思考、写代码!!!/********************************* * copyright@hustyangju * blog: http://blog.csdn.net/hustyangju * 题目:快速排序和随机快速排序 * 思路:采用分治+原址排序,分裂函数将区间分为三个子区间:主元区间,再在主元旁边的两个子区间递归调用排序 * 分裂函数一

2014-11-21 15:51:02 1305

原创 C/C++随机数生成方法

一、随机数测试C++中常用rand()函数生成随机数,但严格意义上来讲生成的只是伪随机数(pseudo-random integral number)。生成随机数时需要我们指定一个种子,如果在程序内循环,那么下一次生成随机数时调用上一次的结果作为种子。但如果分两次执行程序,那么由于种子相同,生成的“随机数”也是相同的。在工程应用时,我们一般将系统当前时间(Unix时间)作为种子,这

2014-11-21 15:01:10 1374

原创 《github一天一道算法题》:堆算法接口实现(堆排序、堆插入和堆取最值并删除)

看书、思考、写代码!/********************************************* * copyright@hustyangju * blog: http://blog.csdn.net/hustyangju * 题目:堆排序实现,另外实现接口:取堆最大值并删除、堆插入 * 思路:堆是在顺序数组原址上实现的,利用完全二叉树的性质,更具最大堆和最小堆的定义实

2014-11-21 11:25:02 1557

原创 抢占式内核与非抢占式内核中的自旋锁(spinlock)的区别

一、概括(1)自旋锁适用于SMP系统,UP系统用spinlock是作死。(2)保护模式下禁止内核抢占的方法:1、执行终端服务例程时2、执行软中断和tasklet时3、设置本地CPU计数器preempt_count(3)自旋锁的忙等待的实际意义是:尝试获取自旋锁的另一个进程不断尝试获取被占用的自旋锁,中间只pause一下!(4)在抢占式内核的spin_lock宏中,第一次关抢占,目的

2014-11-14 11:18:04 2510

原创 浅析Linux的软中断的实现

参考:http://bbs.chinaunix.net/thread-2333484-1-1.htmlhttp://liu1227787871.blog.163.com/blog/static/20536319720129210112658/1、软中断一般来说,一次中断服务的过程通常可以分为两个部分。开头的 部分往往必须在关中断的条件下执行,这样才能在不受干扰的

2014-11-13 10:42:58 2148

原创 Linux内核的idle进程分析

1. idle是什么  简单的说idle是一个进程,其pid号为 0。其前身是系统创建的第一个进程,也是唯一一个没有通过fork()产生的进程。在smp系统中,每个处理器单元有独立的一个运行队列,而每个运行队列上又有一个idle进程,即有多少处理器单元,就有多少idle进程。系统的空闲时间,其实就是指idle进程的"运行时间"。既然是idle是进程,那我们来看看idle是如何被创建,又具体做了

2014-11-12 09:33:51 1226

原创 《github一天一道算法题》:分治法求数组最大连续子序列和

看书、思考、写代码!/*************************************** * copyright@hustyangju * blog: http://blog.csdn.net/hustyangju * 题目:分治法求数组最大连续子序列和 * 思路:分解成子问题+合并答案 * 时间复杂度:O(n lgn) * 空间复杂度:O(1) ********

2014-11-05 21:29:34 1530

原创 《github一天一道算法题》:并归排序

看书、思考、写代码!/******************************************* * copyright@hustyangju * blog: http://blog.csdn.net/hustyangju * 2014-11-04 * 题目:并归排序 * 描述:中分法递归分解一个区间的数组,再合并子区间,在合并时完成排序 * 解题思路:递归法,利用临界

2014-11-04 22:14:34 1195

原创 Linux软连接和硬链接

作者:iTech出处:http://itech.cnblogs.com/ 1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。【硬连接】硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称

2014-11-04 09:27:18 892

原创 《github一天一道算法题》:插入排序

看书、思考、写代码!/************************************************ copyright@hustyangju* blog: http://blog.csdn.net/hustyangju* 2014-11-03* 题目: 插入排序* 描述: 给定一个数组,按照逐个插入比较的方法得到一个已序数组* 解题思路:从第一个元素开始,在已序

2014-11-03 21:36:12 1049

qt signal-slot测试代码

signal-slot机制是QT的核心,也是QT解决线程之间通信的一大亮点。深刻理解其两大特性: (1)loosely coupled sender 与 receiver 互不关心,一个signal可以被多个slot获取,signal可以触发另一个signal (2)type-safe connect连接时,遵守严格的参数约定,slot参数必须与signal参数保持一致,slot参数数量可以少于signal qt signal-slot测试代码

2013-12-27

空空如也

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

TA关注的人

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