
c++
笨小鸟
成功来自奋斗,用百分之百的努力去学习。
展开
-
枚举和宏的区别
枚举常量与宏的区别主要有几点:1。枚举常量是实体中的一种,但宏不是实体;2。枚举常量属于常量,但宏不是常量;3。枚举常量具有类型,但宏没有类型,枚举变量具有与普通变量相同的诸如作用域、值等性质,但宏没有,宏不是语言的一部分,它是一种预处理替换符。枚举类型主要用于限制性输入,例如,某个函数的某参数只接受某种类型中的有限个数值,除此之外的其它数值都不接受,这时候枚举能很好地解决这个问题。能用枚举尽量用原创 2011-06-27 20:36:00 · 3800 阅读 · 1 评论 -
static_cast,dynamic_cast,reinterpret_cast,const_cast区别,及用法总结
1.static_cast对类的指针只能转换有继承关系的类。对普通的指针来说只能在void*和其他指针之间转换。它还可转换简单的类型,比如int到char等。不能提供数字到指针的转换。不能提供不同类型指针之间的转换比如int*到char*。2.dynamic_cast提供安全的转换如果两个指针不存在继承关系转换会失败返回空指针,如果你提供一个错误的指针那样会发生内存访问异常,因为它会去比较两个原创 2011-07-15 21:27:55 · 1999 阅读 · 4 评论 -
compress函数与uncompress函数
zlib 是通用的压缩库,提供了一套 in-memory压缩和解压函数,并能检测解压出来的数据的完整性(integrity)。zlib也支持读写 gzip (.gz)格式的文件。下面介绍两个最有用的函数——compress和 uncompress。int compress(Bytef *dest, uLongf *destLen, const Bytef *sour转载 2012-04-15 13:57:02 · 8716 阅读 · 0 评论 -
c/c++语言位域注意事项
struct weiyu{ int a:1; int b:2;}a存放在内存的低位,在小端的机器上。尤其要注意下面这种情况weiyu w;w.a = 1;这时w.a为-1,因为它是有符号的,这是个符号位。原创 2012-02-01 20:53:20 · 637 阅读 · 0 评论 -
c++ new,delete,析构函数原理,汇编展示
479: String2* str2 = new String2;00401821 6A 10 push 10h 00401823 E8 C8 03 00 00 call operator new (401BF0h) 00原创 2011-07-19 17:47:34 · 3169 阅读 · 1 评论 -
C语言之断言
C语言的那些小秘密之断言 每次写摘要我都觉得是一件很头疼的事儿,因为我知道摘要真的很重要,它几乎直接就决定了读者的数量。可能花了九六二虎之力写出来的东西,因为摘要的失败而前功尽弃,因为绝大多数的读者看文章之前都会浏览下摘要,如果他们发现摘要“不对口”,没有什么特色和吸引人的地方,转载 2011-07-27 21:38:42 · 35418 阅读 · 15 评论 -
lib和dll中全局变量的链接性及用法总结
今天在公司干完活后思考了lib和dll的链接性,然后做了测试,发现和我想象的不大相同,具体总结如下:lib: lib中的全局变量在链接它的单元中是可以通过extern访问到的,但是链接它的单元如果定义了一个相同的全局变量那么lib中的全局变量将被忽略,而且不会出现重复定义的错误。lib中的函数则不相同如果链接它的单元有了相同的函数就会发生重复定义。在lib的cpp中定义一个静态的变量会被所有用到这原创 2011-06-23 20:17:00 · 5137 阅读 · 0 评论 -
STL的不同实现版本
HP STLHP STL是所有其它STL实现版本的根源。它是STL之父Alexander Stepanov在惠普的Palo Alto实验室工作时,和Meng Lee共同完成的,是第一个STL的实现版本(参见1.2节)。这个STL是开放源码的,所以它允许任何人免费使用、复制、修改、转载 2011-07-09 10:47:10 · 640 阅读 · 0 评论 -
STL各个容器性能比较
写入40M的int变量容器内存写入用时从头部移除用时vector 47M 5 秒原创 2011-07-09 14:02:08 · 1387 阅读 · 0 评论 -
vector,map,list,queue区别
1。vector (连续的空间存储,可以使用[]操作符)快速的访问随机的元素,快速的在末尾插入元素,但是在序列中间岁间的插入,删除元素要慢,而且如果一开始分配的空间不够的话,有一个重新分配更大空间,然后拷贝的性能开销.2。deque (小片的连续,小片间用链表相连,实际上内部有一个map的指针,因为知道类型,所以还是可以使用[],只是速度没有vector快)快速的访问随机的元素,快速的在开始和末原创 2011-06-28 20:16:00 · 20083 阅读 · 1 评论 -
C语言printf详解
C中格式字符串printf()的一般形式为: %[标志][输出最小宽度][.精度][长度]类型, 其中方括号[]中的项为可选项。各项的意义介绍如下: 1.类型:表示输出类型的格式字符 格式字符意义a 浮点数、十六进制数字和p-计数法(C99A原创 2011-06-29 20:43:00 · 913 阅读 · 0 评论 -
pcre函数详解
PCRE是一个NFA正则引擎,不然不能提供完全与Perl一致的正则语法功能。但它同时也实现了DFA,只是满足数学意义上的正则。 PCRE提供了19个接口函数,为了简单介绍,使用PCRE内带的测试程序(pcretest.c)示例用法。1. pcre_compile 原型: #include pcre *pcre_compile(const cha原创 2012-05-16 20:42:14 · 14433 阅读 · 0 评论