
C/C++
文章平均质量分 77
cradmin
这个作者很懒,什么都没留下…
展开
-
多重继承多态的实现
关于C++的虚表以及C++对象的内存布局,这两篇blog写的不错:C++虚函数表解析http://blog.youkuaiyun.com/haoel/archive/2007/12/18/1948051.aspxC++对象的内存布局(上)http://blog.youkuaiyun.com/haoel/archive/2008/10/15/3081328.aspxC++对象的内存布局(下)http://blog.csdn原创 2008-10-19 11:23:00 · 1216 阅读 · 0 评论 -
函数调用方式总结
1、_stdcall是Pascal程序的缺省调用方式,通常用于Win32 Api中,函数采用从右到左的压栈方式,自己在退出时清空堆栈。VC将函数编译后会在函数名前面加上下划线前缀,在函数名后加上"@"和参数的字节数。 2、C调用约定(即用__cdecl关键字说明)按从右至左的顺序压参数入栈,由调用者把参数弹出栈。对于传送参数的内存栈是由调用者来维护的(正因为如此,实现可变参数的函数只能使转载 2008-10-22 14:25:00 · 2941 阅读 · 0 评论 -
标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast和const_cast
关于static_cast的用法,这篇文章说的不错:http://www.vckbase.com/document/viewdoc/?id=1651C 风格(C-style)强制转型如下: (T) exdivssion // cast exdivssion to be of type T 函数风格(Function-style)强制转型使用这样的语法: T(exdivssion) // cast转载 2008-10-23 12:42:00 · 584 阅读 · 0 评论 -
一个好用的内存泄漏检测工具-Visual Leak Detector
以前没深入处理过内存泄漏的问题,最近被一段代码折磨的不行,费了九牛二虎之力终于把有泄漏的代码搞定了,决定总结下这方面的资料。1。用第三方的工具检测这方面的工具也不少,Bounds Checker算名气最大的一个,无奈个头太大,感觉也有点复杂,也就没研究;最后在网上找了个开源的小工具Visual Leak Detector,推荐大家使用,用起来很简单,把头文件包含就行了,输出的信息也够用(泄漏点的位转载 2008-11-16 11:35:00 · 2250 阅读 · 0 评论 -
scanf/sscanf %[]格式控制串的用法
scanf中一种很少见但很有用的转换字符:[...]和[ ^...]。#includeint main() { char strings[100]; scanf("%[1234567890]",strings); printf("%s",strings);return 0; } 运行,输入:1234werew后,结果是:1234。通过运行可以发现它的作用是:如果输入的字符属于方括号内字符串中某个转载 2008-12-28 20:25:00 · 4937 阅读 · 0 评论 -
C++ string详解
from unknow source : 之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简单?)。我们尽可以把它看成是C++的基本数据类型。 好了转载 2009-06-09 20:50:00 · 828 阅读 · 0 评论 -
STL里的multimap使用简介
STL里的multimap使用简介 在“使用 库创建关联容器” 一文中,我们讨论了标准库中的 map 关联容器。但那只是 map 容器的一部分。标准库还定义了一个 multimap 容器,它与 map 类似,所不同的是它允许重复键。这个属性使得 multimap 比预想的要更有用:比如在电话簿中相同的人可以有两个以上电话号码,文件系统中可以将多个符号链接映射到相同的物理文件,或D转载 2009-10-28 20:14:00 · 958 阅读 · 0 评论 -
STL中用erase()方法遍历删除元素
STL中的容器按存储方式分为两类,一类是按以数组形式存储的容器(如:vector 、deque);另一类是以不连续的节点形式存储的容器(如:list、set、map)。在使用erase方法来删除元素时,需要注意一些问题。 在使用 list、set 或 map遍历删除某些元素时可以这样使用:正确使用方法1 std::list List; std::list::ite转载 2009-12-22 20:25:00 · 668 阅读 · 0 评论 -
(转)判断一个IP地址是否为内网IP(备忘)
<br />java 代码/*判断是否是内网IP*/public static boolean isInnerIP(String ipAddress){ <br /> boolean isInnerIp = false; <br /> long ipNum = getIpNum(ipAddress); <br /> /** <br /> 私有IP:A类 10.0.0.0-10.255.255.255 <br />转载 2011-04-11 12:57:00 · 2594 阅读 · 1 评论