chrome源码学习之知识体系指南

google chrome浏览器的源代码是非常庞大的,为了较快的进入学习状态,有必要事先对一些知识点进行说明,这里不是要详细说明里面的细节,而是从概念层次阐明一些注意事项。这里谈到的东西也不一定说非要事先把这些东西搞得很明白才能去学习源代码,主要还是先给大家一个心理准备。当然如果你最终要在细粒度的...

2013-07-30 18:01:39

阅读数:743

评论数:0

chrome源码学习之启动流程简介

先说明一下,我这里采用的chrome源代码版本是4.1.249.1064。如果你采用的不是此版本,则可能和我描述的源代码文件名、代码位置不一致,后续关于chrome的文章均采用此版本,不再另作说明。采用此版本没有任何特殊理由,仅仅是当我开始学习chrome的那个时间点的最新版本而已。 另外虽...

2013-07-30 17:48:57

阅读数:1191

评论数:0

chrome源代码目录结构简介(版本4.1.249.1059)

为了对庞大的源码项目进行分析,先对源码目录树作一个简单的介绍,粗略的了解一下各个模块的功能分布情况,chrome源代码src目录下的结构如下图: app:该目录下的代码主要是和各个操作系统平台相关的应用上层代码的提炼。不同操作系统可能对应不同的c++实现文件。比如裁剪板操作、操作系统...

2013-07-30 17:45:47

阅读数:914

评论数:0

MFC中OnTimer的应用

OnTimer()函数用于实现定时控制功能,定时控制功能主要由下面三个函数共同实现: SetTimer, KillTimer()和OnTimer(). 粗略的说,Settimer是设置一个计时器并开始执行计时器Ontimer中的代码,Ontimer是计时器所执行的代码。KillTimer用于停...

2013-07-29 14:27:35

阅读数:602

评论数:0

MFC ASSERT 详解

在开发过程中我们可以假设只要程序运行正确,某一条件肯定成立。若不成立,那么我们可以断言程序肯定出错。在这种情况下我们可要利用ASSERT来设定断言。ASSERT宏的参数是一个逻辑表达式,在程序运行过程中,若该逻辑表达式为真,则不会发生任何动作;若此表达式为假,则系统弹出一个对话框警告你,并停止程序...

2013-07-29 14:09:54

阅读数:531

评论数:0

BYTE、WORD与DWORD类型

在Visual C++ 6.0中,BYTE与WORD,DWORD本质上都是一种无符号整型,它们在WINDEF.H中被定义,定义如下: typedef unsigned char       BYTE; typedef unsigned short      WORD; typedef u...

2013-07-29 10:51:13

阅读数:1728

评论数:0

ReleaseDC和DeleteDC的区别

今天做一个小软件时需要在界面上重复绘制图形 于是写了个函数绘制图形 然后在OnPaint()里调用 发现低频率的重绘窗口还好 一旦经常重绘窗口就会出现错误 应该是内存泄露的错误 但是我发现我所有的CDC全都DeleteDC了 怎么会出现这错误了  于是查了下MS...

2013-07-29 09:31:53

阅读数:3083

评论数:0

AFX_msg

AFX_msg 在头文件(DrawView.h)中声明消息响应函数原型. 消息映射机制是Windows编程的核心内容。Windows下的应用程序也都是通过消息驱动的机制来进行工作的。虽然VC开发环境自带了大量的系统消息处理函数,但我们实际的程序开发过程中总还是避免不了要写一些自定...

2013-07-29 08:51:19

阅读数:565

评论数:0

过SetRegistrykey的作用

在利用MFC框架的时候,在应用程序应用类的的InitInstance()函数中,初始化时总有一个 以下是我在网上找到的一些资料: 过SetRegistrykey 导致应用程序设置,而不是存储在注册表中。INI文件。 名SetRegistryK...

2013-07-26 15:00:40

阅读数:2414

评论数:0

MFC - InitCommonControls

InitCommonControls和InitCommonControlsEx    从Win95开始,Windows提供了一些新的Win32控件,称为通用控件. 如:Toolbar,Status bar,Tree view,List view,Animation,Hot-key,Image...

2013-07-26 14:23:53

阅读数:1413

评论数:0

VC 中与字符串相关的宏 _T、TEXT,_TEXT、L 的作用

一、 在字符串前加一个L作用:     如  L"我的字符串"    表示将ANSI字符串转换成unicode的字符串,就是每个字符占用两个字节。   strlen("asd")   =   3;      strlen(L"asd&...

2013-07-26 10:33:20

阅读数:511

评论数:0

防止程序启动两次的方法CreateMutex()

在工程文件中, WinMain函数里加上以下代码(此代码在BCB6.0下运行): HANDLE hMutex = CreateMutex(NULL, false, "Process");          if (GetLastError() == ERROR_AL...

2013-07-26 10:28:46

阅读数:2293

评论数:0

C++静态成员函数小结(转)

原文地址:http://hi.baidu.com/quanhaili/blog/item/5a40ba86b37e1b22c65cc38f.html 类中的静态成员真是个让人爱恨交加的特性。我决定好好总结一下静态类成员的知识点,以便自己在以后面试中,在此类问题上不在被动。  静态类成员包括...

2013-07-26 09:58:23

阅读数:480

评论数:0

MFC架构之CWinApp类

CWinApp是一个基类,你通过它来继承Windows应用程序对象。应用程序对象为你提供了初始化应用程序(以及它的每一个实例)和运行应用程序所需的成员函数。它实现主事件循环并把事件分发给MFC中其他类.       每个使用微软基础类库的应用程序都只能包含一个从CWinApp继承的对象。当Win...

2013-07-26 09:18:58

阅读数:593

评论数:0

CString常用方法简介

CString::Compare int Compare( LPCTSTR lpsz ) const; 返回值   字符串一样 返回0          小于lpsz  返回-1          大于lpsz  返回1          区分大小字符          CString...

2013-07-25 16:44:44

阅读数:533

评论数:0

C++ - _T含义 C++语言中“_T”是什么意思?

_T("Hello")是一个宏,他的作用是让你的程序支持Unicode编码,因为Windows使用两种字符集ANSI和UNICODE,前者就是通常使用的单字节方式,但这种方式处理象中文这样的双字节字符不方便,容易出现半个汉字的情况。而后者是双字节方式,方便处理双字节字符。 Wi...

2013-07-24 08:51:49

阅读数:1417

评论数:0

#pragma用法详解

Author :Jeffrey   My Blog:http://blog.csdn.net/gueter/   目录: (0)   前言 (1) #pragma message能够在编译信息输出窗口中输出相应的信息 (2) #pragma code_seg能够设置...

2013-07-23 17:12:50

阅读数:557

评论数:0

用C语言的rand()和srand()产生伪随机数的方法总结

标准库(被包含于中)提供两个帮助生成伪随机数的函数: 函数一:int rand(void); 从srand (seed)中指定的seed开始,返回一个[seed, RAND_MAX(0x7fff))间的随机整数。 函数二:void srand(unsigned seed); 参数s...

2013-07-22 13:25:23

阅读数:530

评论数:0

c++中冒号(:)和双冒号(::)的用法

转载于:http://fengqing888.blog.163.com/blog/static/3301141620100623933512/ 1.冒号(:)用法 (1)表示机构内位域的定义(即该变量占几个bit空间) typedef struct _XXX{ unsign...

2013-07-22 10:09:35

阅读数:562

评论数:0

C++ string::size_type 类型

int main() {     string str("Hello World!\n");     cout                return 0; }    从逻辑上来讲,size() 成员函数似乎应该返回整形数值,或是无符号整数。但事实上,size...

2013-07-19 10:10:21

阅读数:701

评论数:0

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