2016年12月29日

COM组件的运行机制

摘要: COM组件的运行机制 构造一个创建COM组件的最小框架结构 IUnknown *pUnk=NULL; IObject *pObject=NULL; CoInitialize(NULL); CoCreateInstance(CLSID_Object, CLSCTX_INPROC_SERVER, NUL 阅读全文

posted @ 2016-12-29 14:37 google_yep 阅读(2531) 评论(0) 推荐(0) 编辑

2016年7月6日

vs shortcut

摘要: CTRL+D 查看并修改tab顺序 CTRL+INS 拷贝 CTRL+C 拷贝 SHIFT+DEL 剪切 CTRL+X 剪切 SHIFT+INS 粘贴 CTRL+V 粘贴 CTRL+F 查找 CTRL+H 替换 CTRL+L 删除一行 ALT+F2 编辑和修改书签(永久书签) CTRL+F2 编辑和 阅读全文

posted @ 2016-07-06 11:03 google_yep 阅读(183) 评论(0) 推荐(0) 编辑

CreateProcess[转载]

摘要: 1.函数说明: WIN32API函数CreateProcess用来创建一个新的进程和它的主线程,这个新进程运行指定的可执行文件。 2.函数原型: BOOL CreateProcess (LPCTSTR lpApplicationName, LPTSTR lpCommandLine, LPSECURI 阅读全文

posted @ 2016-07-06 10:57 google_yep 阅读(151) 评论(0) 推荐(0) 编辑

2014年1月6日

指向类的成员的指针

摘要: 类和对象深入讨论——指向类的成员的指针指向类的成员的指针 类的成员本身也是一个变量,函数或者对象等。因此也可以直接将它们的地址存放到一个指针变量中,这样就可以使指针直接指向对象的成员,进而可以通过这些指针访问对象的成员。需要指出的是,通过指向成员的指针只能访问公有的数据成员和成员函数。指向对象的成员的指针使用前要先声明,再赋值,然后才能访问。1,指向数据成员的指针格式如下:类型说明符 类名::* 数据成员指针名; 声明了一个指向数据成员的指针后需要对其进行赋值,也就是要确定指向类的哪一个成员。对数据成员指针赋值的一般格式如下:数据成员指针名 = &类名::数据成员名; ... 阅读全文

posted @ 2014-01-06 20:08 google_yep 阅读(1701) 评论(0) 推荐(0) 编辑

2014年1月3日

对眼睛有利的屏幕颜色

摘要: 银河白 #FFFFFF RGB(255, 255, 255) 杏仁黄 #FAF9DE RGB(250, 249, 222) 秋叶褐 #FFF2E2 RGB(255, 242, 226) 胭脂红 #FDE6E0 RGB(253, 230, 224) 青草绿 #E3EDCD RGB(227, 237, 205) 海天蓝 #DCE2F1 RGB(220, 226, 241) 葛巾紫 #E9EBFE RGB(233, 235, 254) 极光灰 #EAEAEF RGB(234, 234, 239) 阅读全文

posted @ 2014-01-03 15:10 google_yep 阅读(493) 评论(0) 推荐(0) 编辑

2013年12月31日

C++的动态联编与静态联编【转载】

摘要: 【摘要】:本文阐述了静态联编和动态联编的概念和区别,通过具体实例分析了实现动态联编的条件,指出了虚函数是实现动态联编的基础。【关键词】:静态联编;动态联编;虚函数在C++中,联编是指一个计算机程序的不同部分彼此关联的过程。按照联编所进行的阶段不同,可分为两种不同的联编方法:静态联编和动态联编。 1.静态联编 静态联编是指联编工作在编译阶段完成的,这种联编过程是在程序运行之前完成的,又称为早期联编。要实现静态联编,在编译阶段就必须确定程序中的操作调用(如函数调用)与执行该操作代码间的关系,确定这种关系称为束定,在编译时的束定称为静态束定。静态联编对函数的选择是基于指向对象的指针或者引用的类型。. 阅读全文

posted @ 2013-12-31 13:43 google_yep 阅读(279) 评论(0) 推荐(0) 编辑

关于虚析构函数

摘要: 关于虚析构函数 在C++中,不能声明虚构造函数,但可以声明虚析构函数。多态性是指不同的对象对同一消息有不同的行为特性。虚函数作为运行时多态性的基础,主要是针对对象的,而构造函数是在对象产生之前运行的,因此虚构造函数是没有意义的。析构函数的功能是在该类对象消亡之前进行一些必要的清理工作,析构函数最好都是virtual的。首先解释一下虚构函数和指针之间是如何交互的,以及虚析构函数的具体含义。例如以下代码,其中SomeClass是含有非virtual析构函数的一个类:SomeClass *p= new SomeClass;. . .. . .delect p;为p调用delect时,会自动调用S.. 阅读全文

posted @ 2013-12-31 11:59 google_yep 阅读(262) 评论(0) 推荐(0) 编辑

虚析构函数的使用(转载!)

摘要: ////////////////////////////////////////////////////////////////////////////////#if CODE1#include//给出一个没有虚拟析构函数的基类classBase{public: Base() { std::cout//给出一个没有虚拟析构函数的基类classBase{public: Base() { std::cout//给出一个有虚拟析构函数的基类classBase{public: Base() { std::cout//给出一个有虚拟析构函数的基类classBase{public: Base() { st 阅读全文

posted @ 2013-12-31 10:19 google_yep 阅读(175) 评论(0) 推荐(0) 编辑

2013年12月26日

c/c++内存机制(转)

摘要: c/c++内存机制(一)(转)一:C语言中的内存机制在C语言中,内存主要分为如下5个存储区:(1)栈(Stack):位于函数内的局部变量(包括函数实参),由编译器负责分配释放,函数结束,栈变量失效。(2)堆(Heap):由程序员用malloc/calloc/realloc分配,free释放。如果程序员忘记free了,则会造成内存泄露,程序结束时该片内存会由OS回收。(3)全局区/静态区(Global Static Area):全局变量和静态变量存放区,程序一经编译好,该区域便存在。并且在C语言中初始化的全局变量和静态变量和未初始化的放在相邻的两个区域(在C++中,由于全局变量和静态变量编译器会 阅读全文

posted @ 2013-12-26 13:40 google_yep 阅读(1186) 评论(0) 推荐(0) 编辑

delete this

摘要: In order to understand "delete this" :First Step------dive into "delete p"delete p 执行了哪两个步骤?delete p 是一个两步的过程:调用析构函数,然后释放内存。delete p产生的代码看上去是这样的(假设是Fred*类型的):// 原始码:delete p;if (p != NULL){ p->~Fred(); operator delete(p);}p->~Fred() 语句调用 p 指向的Fred 对象的析构函数。operator delete(p) 阅读全文

posted @ 2013-12-26 13:36 google_yep 阅读(286) 评论(0) 推荐(0) 编辑

导航