随笔分类 -  CPP

摘要:不论是硬件临界资源,还是软件临界资源,多个进程必须互斥地对它进行访问。每个进程中访问临界资源的那段代码称为临界区(Critical Section)。 每个进程中访问临界资源的那段程序称为临界区(Critical Section)(临界资源是一次仅允许一个进程使用的共享资源)。每次只准许一个进程进入临界区,进入后不允许其他进程进入。不论是硬件临界资源,还是软件临界资源,多个进程必须互斥地对它进行访问。 多个进程中涉及到同一个临界资源的临界区称为相关临界区。 进程进入临界区的调度原则是: ①如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。 ②任何时候,处于临界区内的进程不可... 阅读全文
posted @ 2013-09-02 11:03 Dayw 阅读(1073) 评论(0) 推荐(0)
摘要:什么是Detours简单地说,Detours是微软提供的一个开发库,使用它可以简单、高校、稳定地实现APIHOOK的功能。 Detours是一个可以在x86、x64和IA64平台上测试任意Win32函数的程序开发库。它可以通过为目标函数重写在内存中的代码而达到拦截Win32函数的目的。Detours还可以将任意的DLL或数据片段(称之为有效载荷)注入到任意Win32二进制文件中。Detours被广泛应用在微软内部和其他行业中。你可以从微软官方网站下载到Detours的express版本,目前最新版本是2.1,它包含有下列的崭新特性:* 完整的DetoursAPI文档*附加和拆卸处理模块* 支. 阅读全文
posted @ 2013-08-29 16:36 Dayw 阅读(4985) 评论(0) 推荐(1)
摘要:一. 虚函数1.什么是虚函数:虚函数的定义是在基类中进行的,被 virtual 修饰的,当基类中的某个成员函数被声明为“虚函数”后,可以在一个或多个派生类中重新定义该函数,重新定义时,其函数原型(包括:返回类型,函数名,参数个数,参数类型以及参数顺序都必须与基类中的完全相同),一般虚函数的语法如下:virtual (形参表){ 函数体;}注意:虚函数的作用是在允许在派生类中对基类中的虚函数进行重新定义,显然只能用于类的继承层次中。使用虚函数的场景:(1) 成员函数是否作为一个基类,是否在派生类中需要改动(2) 对成员函数的调用,时候通过基类指针或引用注意:虚函数 与 函数重载的区别,列子:.. 阅读全文
posted @ 2013-08-27 12:32 Dayw 阅读(858) 评论(0) 推荐(0)
摘要:Standard Template Language提供了三个最基本的容器:vector,list,dequevector和built-in数组类似,它拥有一段连续的内存空间,并且起始地址不变,因此 它能非常好的支持随即存取,即[]操作符,但由于它的内存空间是连续的,所以在中间 进行插入和删除会造成内存块的拷贝,另外,当该数组后的内存空间不够时,需要重新 申请一块足够大的内存并进行内存的拷贝。这些都大大影响了vector的效率。 list就是数据结构中的双向链表(根据sgi stl源代码),因此它的内存空间可以是不连续 的,通过指针来进行数据的访问,这个特点使得它的随即存取变的非常没有效率,. 阅读全文
posted @ 2011-07-25 13:32 Dayw 阅读(285) 评论(0) 推荐(0)
摘要:C++类的关键特征是接口与实现的分离。接口(Public)是一些“用户可以应用到类对象上的操作”的集合,它由三部分组成:操作的名字,返回值,参数表私有实现(Private) 支持Public 所必需的算法和数据。理想情况下,即使类的接口增长了,它也不用变得与以前的版本不相兼容;另一方面在类的生命周期内其实现可以自由演化!class Matrix{public: Matrix(int=defaultRowSize,int=defaultColumnSize); Matrix(const Matrix&); ~Matrix(); Matrix &operator=(const Ma 阅读全文
posted @ 2011-07-15 11:27 Dayw 阅读(179) 评论(0) 推荐(0)