- 博客(18)
- 资源 (10)
- 收藏
- 关注
原创 C++引用的本质
1.引用不止是目标别名那么简单,它占有内存空间,它有值,它的值其实就是目标地址2.引用自身地址与目标地址并不相同该3.引用本质上就是值为目标地址的常量指针 From:http://hi.baidu.com/wudasgle/item/73a062c3f11a9121c710b2c6
2013-04-23 23:43:54 547
原创 Winsock编程接口
一:Winsok的寻址方式和字节顺序1.sockaddr和sockaddr_in本质上是相同的结构,sockaddr_in为定义的更容易操作而已。struct sockaddr{ u_short sa_family; char sa_data[14];};struct sockaddr_in{ short sin_family; // 地址家族,应为AF_INET
2013-04-20 17:13:32 626
原创 STL之vectr
这几天看了侯捷的《STL源码剖析》的vector相关部分,做一些记录1.vector的内存排列与数组一样是连续的2.vector的迭代器本质就是特例类的指针,如vector::iterator即int*3.vector的size和容量并不相同,容量永远大于等于size;vector会申请多余的内存,以避免每次insert元素时申请释放内存已经拷贝的消耗4.当往vector中inse
2013-04-15 13:33:57 625
原创 HTTP GET和POST区别
1.根据HTTP规范,GET用于获取指定URL(资源标识符)信息,POST用于上传信息到URL对应的服务器2.GET请求的数据会附在URL之后(就是把数据放在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连; 如http://www.baidu.com/login?user=test&password=testtest(当然,百度不可能这么干,只是举个例子);从此也
2013-04-14 01:14:05 642
原创 大小端模式
1.高位字节、低位字节要理解什么是大端模式和小端模式,必须先理解高位字节和低位字节的概念。一个16位的变量为 1111 1111 0000 0000,那么在这16个位置中的前八个就是高位,1111 1111就是高位字节;后八个就是低位,0000 0000就是低位字节。 2.大端模式、小端模式大端模式(Big-Endian)就是将低位字节存放在内存的高地址端,高位字节存
2013-04-13 17:16:24 550
原创 一锅乱炖之C/C++
1.memset是运行时清零,而{0}则是编译时清零2.typedef unsigned int UINT; typedef UINT* PUINT;以上定义合法。3.可以对引用再次引用4.MIDL_INTERFACE定义接口方法如下:MIDL_INTERFACE("55BCC111-5D80-
2013-04-07 14:30:54 986
转载 HTTP头
From:http://blog.csdn.net/hero7750/article/details/3710611HTTP 头部解释1. Accept:告诉WEB服务器自己接受什么介质类型,*/* 表示任何类型,type/* 表示该类型下的所有子类型,type/sub-type。 2. Accept-Charset: 浏览器申明自己接收的字符集 Accept-
2013-04-05 19:25:15 829
原创 TCP/IP头
IP头格式: 版本号 (4位) IP头长度 (4位) 服务类型 (8位) 数据包长度 (16位) 标识段 (16位) 标志段 (16位) 生存时间 (8位) 传输协议 (8位) 头校验和 (16位) 发送地址 (16位) 目标地址 (16位) 选项
2013-04-05 15:52:53 665
转载 MD(d)、MT(d)编译选项的区别
1、编译选项的位置以VS2005为例,这样子打开:1) 打开项目的Property Pages对话框2) 点击左侧C/C++节3) 点击Code Generation节4) 右侧第六行Runtime Library项目2、各个设置选项代表的含义编译选项包含静态链接的l
2013-04-05 15:46:28 756
原创 原码 反码 补码
位运算是指二进制位的运算,在系统软件中,经常要处理一些二进制位的问题,例如:在进行计算机之间的通讯的时候需要通过某些标志位来进行判断通讯是否成功。 计算机中的存储器就是由许多字节(byte)单元组成的。一般,内存的最小度量单位就叫做位(bit),也叫比特。而一个字节就是由8个二进制位组成,其中,最右边的一位叫做最低位,最左边的一位叫做最高位。 所以,一个16位的整数将在内存中占
2013-04-05 15:45:52 614
原创 编译链接那些事~
总有各种各样的编译链接过程和产生的文件,为加深记忆及方便下次查看,特作记录文件篇:.map:映射文件(.map)包含了正在链接的程序的以下信息1.模块名,是文件的基本名称2.程序头部的时间戳(不是从文件系统中获得)3.程序中组的列表,包含每个组的起始地址(as section:offset),长度,组名和类4.一个公共符号的列表,包含每个地址(as section:offs
2013-04-05 15:45:17 651
原创 虚表~
虚表(vtable)一直都好像很神秘的样子,今天工作中涉及到虚表,就做下一些记录吧~1.每一个拥有虚函数的类都有一个虚表,注意是虚函数。2.虚表实际上是一个函数指针数组,记录了本类所有虚函数的地址。当类对象调用虚函数时,会根据对应关系从虚表中获得虚函数指针,再去执行函数,这种行为称为晚绑定。3.子类的虚表继承了父类的虚表,如果父类vtable中包含某一项,则子类的vtable中也将包含
2013-04-05 15:44:09 853
原创 静态编译/动态编译 静态链接/动态链接 静态库/动态库
记录一下,下次搞不清可以来看看。静态编译/动态编译静态编译:是指编译器在编译可执行文件的时候,将可执行文件需要调用的对应的动态链接库中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候可以不依赖动态链接库。动态编译:动态编译的可执行文件需要附带一个动态链接库,在执行时,需要调用其动态链接库中的命令。所以其优点是缩小了执行文件本身的体积,另一方面是加快了编译速度。缺点是哪怕是
2013-04-05 15:43:27 818
原创 windbg分析dump
要使用windbg分析dump必须加载正确的符号,可以通过设置Symbols File Path为"D:/Symbols;SRV*D:/Symbols*http://msdl.microsoft.com/download/symbols",当windbg在D:/Symbols中找不到需要的符号时,会自行从http://msdl.microsoft.com/download/symbols下载。
2013-04-05 15:41:54 1504
原创 static_cast操作符
static_cast ( expression )@breif:将表达式expression从当前类型转换为type-id所指类型。@remark:没有运行时的类型检查来保证转换的安全性。static_cast操作符可以被用来一把一个指针变量转换为基类型把一个指针变量转换为派生类型。这样的转换并不总是安全。总之,你可以使用static_cast当你想当你想把数字类型比如enums、
2013-04-05 15:40:11 574
原创 这些文件都是干嘛用的?
新建工程时会自动生成一些文件,编译链接时也会生成各种各样的文件,下面做一些记录及说明~stdafx.h:stdafx.h为预编译头文件。用于包含工程中很多文件需要包含的文件,编译器预先编译包含在stdafx.h中的文件,再以后的编译中使用之前预先编译好的结果,不用再次编译,提高了编译速度(当然,如果stdafx.h或者stdafx.cpp修改了需要重新编译)。
2013-04-05 15:33:50 598
procexp(资源管理器多标签工具)
2013-05-30
Ailurus Linux下非常方便的安装软件工具
2011-10-23
最全的CButtonST资料
2011-06-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人