
C++
天空的梦想1986
游戏码农
展开
-
关于内存泄漏检测的一些方法
#define _CRTDBG_MAP_ALLOC //显示内存块类型和内存块分配编号 #include ........... //在输出窗口查看内存泄露信息,在程序结束前加入: _CrtDumpMemoryLeaks(); //退出程序位置固定时 _CrtSetDbgFlag ( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );// 当退出位置不固定时 运行程序,看输出信息: output内存泄原创 2010-11-29 16:36:00 · 518 阅读 · 0 评论 -
一个容易被忽视的 strlen 细节
今天在csdn看到有人出了一道考数组长度的问题,感觉挺不错的,稍稍归纳一下,记录在案。 char test[]= {0x01,0x02,0x03}; int a = strlen(test); int b= sizeof(test); 则 a值为不确定值,因为 strlen 判断字符串结束的标志是指针走到值原创 2012-02-29 13:45:20 · 701 阅读 · 0 评论 -
TinyXML之初体验
前一阵子做一个客服回复玩家问题工具,要用到读写XML文件的数据,同事推荐用TinyXML,于是,开始了我与TinyXML的亲密之旅。 先简单说说配置:首先下载TinyXML库的文件,然后在 TinyXML 的目录里面找到tinystr.h, tinyxml.h,tinystr.cpp,tinyxml.cpp, tinyxmlerror.cpp,tinyxmlparser.cpp六原创 2011-11-08 01:10:08 · 566 阅读 · 0 评论 -
More Effective C++ --- 卷首语
半年前阅读的Effective C++ , 读后深感其内容之精彩。而作为该书的系列读物,More Effective C++ 同样是不可多得的书籍。 相对于 Effective C++ 内容的篇幅,More Effective C++ 所介绍的技术较为详细深入原创 2011-10-01 15:43:13 · 424 阅读 · 0 评论 -
一个非C++程序员问的C++问题
今天一同事闲时看了一些C++代码,于是问我 new 一个类型时后面加括号和不加括号有什么区别?如下: A* test1 = new A A* test2 = new A( ) 我竟一时答不上来。原创 2011-09-28 00:16:04 · 389 阅读 · 0 评论 -
理顺一下C++三种内存分配方式
如果贸贸然让我说出关于题目相关的知识,可能一时还说不清,看来对这方面还得熟记,现整理之后记录在案,顺便理顺一下头绪。 从静态存储区域分配:内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。静态分配的区域的生命期是整原创 2011-09-20 13:10:57 · 561 阅读 · 1 评论 -
双指针的一个使用实例
什么是双指针? 例如:char **p; p即为双指针。 当我们需要修改指针变量本身的值的时候,可以使用双指针。 先看一个示例:void getmemory(char *ptr){ ptr = (char *)malloc(20); } void getbuffer(){ char *buffer = NULL; getmemory(buffer); } 示例想要原创 2011-01-19 18:51:00 · 665 阅读 · 0 评论 -
关于C语言的几个细节
1 sizeof 不是函数,而是运算符。2 编译器解析的时候是忽略类型名的,const 离谁近就修饰谁。 const int *p; //p 可变,p 指向的对象不可变 int const *p; // p 可变,p 指向的对象不可变 int *const p; // p 不可变,p 指向的对象可变 const int *const p; //指针p 和p 指向的对象都不可变3 当你需要输出的内容不包括变量或常量时适合使用puts(),而不用printf函数原创 2011-01-04 13:13:00 · 408 阅读 · 0 评论 -
关于C++继承的一些遗忘细节
这两天偶尔翻看一本C++的书籍时,看到一个继承的知识点竟有点陌生的感觉。也许是之前恰好没接触过,也许是太久没接触罢了,现在究竟是忘记了。应该记下来,以作备忘,顺便罗嗦一下继承的概念,嗯嗯。 那就是C++中的访问声明。 众所周知,C++有三种继承方式,公有继承,保护继承,私有继承。公有继承,基类的公有和保护成员在派生类的性质不变。保护继承,基类的公有和保护成员在派生类均变成保护成员。保护成员是专为继承机制而设的,使其在派生类中可见,类外不可见。私有继承,基类的所有成员在派生类均原创 2010-10-25 08:31:00 · 422 阅读 · 0 评论 -
几个常用的数学函数
<br />void abort(void); <br />功 能: 异常终止一个进程<br /><br /> int abs(int i); <br />功 能: 求整数的绝对值 <br />double acos(double x); <br />功 能: 反余弦函数<br /><br />double asin(double x); <br />功 能: 反正弦函数<br /><br />double atan(double x); <br />功 能: 反正切函数<br /><br />double原创 2010-12-16 09:14:00 · 402 阅读 · 0 评论 -
一个预处理定义的问题
最近用zeromq 去实现游戏资源进程相关功能。 这两天遇到一个C++项目的编译问题: a.lib 引用到 zeromq 的库 libzmq.lib , b.exe 引用到 a.lib. 但在编译 b.exe 的时候却还一直报 a.lib 找不到 zeromq库相关的函数定义,而a 项目的编译是正常的。原创 2012-06-18 13:23:49 · 771 阅读 · 1 评论