摘要: 1: #include 2: #include 3: #include 4: using namespace std; 5: 6: void Merge(int a[], int left, int mid, int right, int* tempA, int* tempB) 7: { 8: ... 阅读全文
posted @ 2013-07-05 09:54 Wilson Kwok 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 读完侯捷先生的《STL源码剖析》,感觉真如他本人所说的“庖丁解牛,恢恢乎游刃有余”,STL底层的实现一览无余,给人一种自己的C++水平又提升了一个level的幻觉,呵呵~ 纵观全书,讲得最多、最透彻的就是C++的Generic Programming的思想。STL通过class template,function template将容器、迭代器、算法从数据类型中解脱出来,使其能“以不变应万变”,并能针对不同数据类型的相关特性(type_traits),从各种版本的实现中选最优而用之,从具体到抽象,又兼具具体特性的考虑,实乃智慧的结晶。这本书也开阔了我的眼界,使我见识了如partial spe. 阅读全文
posted @ 2013-06-19 00:00 Wilson Kwok 阅读(293) 评论(0) 推荐(0) 编辑
摘要: union主要是共享内存,分配内存以其最大的结构或对象为大小,即sizeof最大的。在C/C++程序的编写中,当多个基本数据类型或复合数据结构要占用同一片内存时,我们要使用联合体;当多种类型,多个对象,多个事物只取其一时(我们姑且通俗地称其为“n 选1”),我们也可以使用联合体来发挥其长处。一下转载自网站: 在C/C++程序的编写中,当多个基本数据类型或复合数据结构要占用同一片内存时,我们要使用... 阅读全文
posted @ 2013-06-09 11:20 Wilson Kwok 阅读(224) 评论(0) 推荐(0) 编辑
摘要: C++定义默认形参时,只需要在声明的时候加入值,不要在实现的时候在函数头中加入默认值. 如: xxx.h void f(int a = 1); xxx.cpp void f(int a = 1); // Error! 阅读全文
posted @ 2013-06-01 11:00 Wilson Kwok 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 规律:变量和函数的声明应该放在头文件中,头文件不应包含函数定义,否则即使是用了#ifndef #endif条件编译也会报函数重复定义的Error。 #include文件的一个不利之处在于一个头文件可能会被多次包含,为了说明这种错误,考虑下面的代码: #include "x.h" #include "x.h" 显然,这里文件x.h被包含了两次,没有人会故意编写这样的代码。但是下面... 阅读全文
posted @ 2013-05-30 20:55 Wilson Kwok 阅读(605) 评论(0) 推荐(0) 编辑
摘要: 用#include可以包含其他头文件中变量、函数的声明,为什么还要extern关键字,如果我想引用一个全局变量或函数a,我只要直接在源文件中包含#include<xxx.h> (xxx.h包含了a的声明)不就可以了么,为什么还要用extern呢??这个问题一直也是似是而非的困扰着我许多年了,今天上网狠狠查了一下总算小有所获了: 头文件 首先说下头文件,其实头文件对计算机而言没什么作用,她只是在... 阅读全文
posted @ 2013-05-14 20:13 Wilson Kwok 阅读(546) 评论(0) 推荐(0) 编辑
摘要: 原文链接:http://www.cnblogs.com/wanghao111/archive/2009/05/25/1488816.html char :单字节变量类型,最多表示256个字符, wchar_t :宽字节变量类型,用于表示Unicode字符, 它实际定义在<string.h>里:typedef unsigned short wchar_t。 为了让编译器识别Unicode字符... 阅读全文
posted @ 2013-04-23 13:36 Wilson Kwok 阅读(186) 评论(0) 推荐(0) 编辑
摘要: (原文链接)http://www.imkevinyang.com/2010/06/%E5%85%B3%E4%BA%8E%E5%AD%97%E7%AC%A6%E7%BC%96%E7%A0%81%EF%BC%8C%E4%BD%A0%E6%89%80%E9%9C%80%E8%A6%81%E7%9F%A5%E9%81%93%E7%9A%84.html 字符编码的问题看似很小,经常被技术人员忽视,但是很容... 阅读全文
posted @ 2013-04-21 10:16 Wilson Kwok 阅读(416) 评论(0) 推荐(0) 编辑
摘要: 关于 C/C++ 函数调用约定,大多数时候并不会影响程序逻辑,但遇到跨语言编程时,了解一下还是有好处的。 VC 中默认调用是 __cdecl 方式,Windows API 使用 __stdcall 调用方式,在 DLL 导出函数中,为了跟 Windows API保持一致,建议使用 __stdcall 方式。 调用约定跟堆栈清除密切相关。如果写一个汇编函数,给 C/C++ 调用,在 __cdec... 阅读全文
posted @ 2013-04-19 08:41 Wilson Kwok 阅读(204) 评论(0) 推荐(0) 编辑
摘要: With the Ogre wiki tutorial #3 : Terrain, Sky, and Fog we will have a nice looking terrain but it is not ours. So let's change the code a little bit. First we need to understand what is done. In Ogre3D 1.7 importing a heightmap and creating a terrain is done with the Terrain component. The new t 阅读全文
posted @ 2013-02-24 16:29 Wilson Kwok 阅读(1310) 评论(0) 推荐(0) 编辑