2011年12月7日
摘要: 1 几何符号 ⊥ ∥ ∠ ⌒ ⊙ ≡ ≌ △ 2 代数符号 ∝ ∧ ∨ ~ ∫ ≠ ≤ ≥ ≈ ∞ ∶ 3运算符号 × ÷ √ ± 4集合符号 ∪ ∩ ∈ 5特殊符号 ∑ π(圆周率) 6推理符号 |a| ⊥ ∽ △ ∠ ∩ ∪ ≠ ≡ ± ≥ ≤ ∈ ← ↑ → ↓ ↖ ↗ ↘ ↙ ∥ ∧ ∨ &; § ① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨ ⑩ Γ Δ Θ Λ Ξ Ο Π Σ Φ Χ Ψ Ω α β γ δ ε ζ η θ ι κ λ μ ν ξ ο π ρ σ τ υ φ χ ψ ω Ⅰ Ⅱ Ⅲ Ⅳ Ⅴ Ⅵ Ⅶ Ⅷ Ⅸ Ⅹ Ⅺ Ⅻ ⅰ 阅读全文
posted @ 2011-12-07 21:24 wanghetao 阅读(826) 评论(0) 推荐(0) 编辑
  2011年12月1日
摘要: 在linux下提供了两种基本的Timer机制:alarm和settimer。1、alarm#include <unistd.h>unsigned int alarm(unsigned int seconds);这是个最简单的Timer,当调用了alarm(n)时,等待n秒后,就会触发一次SIGALRM信号,故需要在调用alarm函数前先设置好 SIGALRM信号对应的处理函数才行,而当调用alarm(0)时,表示停止当前的timer处理,不要发出SIGALRM信号。返回值:返回上一次调用alarm函数的剩余秒好,若之前没有调用alarm函数,则返回0。例(第一次等待1秒触发Time 阅读全文
posted @ 2011-12-01 15:06 wanghetao 阅读(15757) 评论(0) 推荐(0) 编辑
  2011年11月27日
摘要: UML类图关系大全1、关联双向关联:C1-C2:指双方都知道对方的存在,都可以调用对方的公共属性和方法。在GOF的设计模式书上是这样描述的:虽然在分析阶段这种关系是适用的,但我们觉得它对于描述设计模式内的类关系来说显得太抽象了,因为在设计阶段关联关系必须被映射为对象引用或指针。对象引用本身就是有向的,更适合表达我们所讨论的那种关系。所以这种关系在设计的时候比较少用到,关联一般都是有向的。使用ROSE 生成的代码是这样的:classC1...{public:C2*theC2;};classC2...{public:C1*theC1;};双向关联在代码的表现为双方都拥有对方的一个指针,当然也可以是 阅读全文
posted @ 2011-11-27 20:26 wanghetao 阅读(310) 评论(0) 推荐(0) 编辑
  2011年11月21日
摘要: 笔者觉得这3个new有点意思,有时候我也被搞懵了,这些创造者难不成觉得C++过于简单,所以搞一点含糊的术语出来。这次总结一下,以便再懵的时候有个参考。有错的地方请不吝赐教,多谢先!简单点吧:1. new operator,即熟悉的new操作符,用它从堆中分配一个对象,并且初始化。CHeapObject* p=new CHeapObject(name);既然是操作符,那么它的行为就和其他+-*/操作符一样,是由C++语言定义的,不能改变,即使通过重载的方式也不能改变。C++规定了new操作符的行为:分配一个合适的空间容纳CHeapObject对象,然后调用其构造函数初始化对象。2. operat 阅读全文
posted @ 2011-11-21 17:13 wanghetao 阅读(430) 评论(0) 推荐(0) 编辑
摘要: 有关placementnew 作者: hzh5121. placementnew的含义placementnew是重载operatornew的一个标准、全局的版本,它不能够被自定义的版本代替(不像普通版本的operatornew和operatordelete能够被替换)。void*operatornew(size_t,void*p)throw(){returnp;}placementnew的执行忽略了size_t参数,只返还第二个参数。其结果是允许用户把一个对象放到一个特定的地方,达到调用构造函数的效果。和其他普通的new不同的是,它在括号里多了另外一个参数。比如:Widget*p=newWi. 阅读全文
posted @ 2011-11-21 16:43 wanghetao 阅读(9924) 评论(0) 推荐(4) 编辑
摘要: 看書的時候,一直看到" POD" 這個關鍵字,可能是我從來沒有好好把一本C++的書看完吧(還是眼睛自動忽略 orz),後來上網查了一下,在這邊分享一下好了..POD 是Plain Old Data的簡寫,是指一些系統的int, char, float、指標、array之類的資料型別,這應該蠻好想像的,就是C++ compiler提供的內建型別,比較特別的是類別與結構,如果類別和結構帶有trivial constructor,也是POD的一種class vector3D{ float x, y, z; } ; struct size{ int width, height; } 阅读全文
posted @ 2011-11-21 16:04 wanghetao 阅读(2204) 评论(0) 推荐(0) 编辑
摘要: 模版的特化与偏特化 Partial Template Specialization能够让你在模板(Template)的所有可能的实体中特化出一组子集. 1.模板的特化(template specialization): 例如,定义如下的一个模板: template<class Window, class Controller> class Widget { ... 泛化实现代码 ... }; 然后你可以像下面那样明确地加以特化: template<> //注意:template后面的尖括号中不带任何内容; class Widget<ModalDialog, MyC 阅读全文
posted @ 2011-11-21 15:38 wanghetao 阅读(3634) 评论(0) 推荐(0) 编辑
摘要: 1.memmove函数原型:void *memmove(void *dest, const void *source, size_t count)返回值说明:返回指向dest的void *指针参数说明:dest,source分别为目标串和源串的首地址。count为要移动的字符的个数函数说明:memmove用于从source拷贝count个字符到dest,如果目标区域和源区域有重叠的话,memmove能够保证源串在被覆盖之前将重叠区域的字节拷贝到目标区域中。2.memcpy函数原型:void *memcpy(void *dest,const void *source,size_tcount);返 阅读全文
posted @ 2011-11-21 09:06 wanghetao 阅读(311) 评论(0) 推荐(0) 编辑
摘要: 有的人爱用strcpy等标准ANSI函数,有的人爱用_tXXXX函数,有必要把来龙去脉搞清楚。 为了搞清这些函数,就必须理请几种字符类型的写法。char就不用说了,先说一些wchar_t。wchar_t是Unicode字符的数据类型,它实际定义在<string.h>里: typedef unsigned short wchar_t; 不能使用类似strcpy这样的ANSI C字符串函数来处理wchar_t字符串,必须使用wcs前缀的函数,例如wcscpy。为了让编译器识别Unicode字符串,必须以在前面加一个“L”,例如: wchar_t *szTest=L"This 阅读全文
posted @ 2011-11-21 08:51 wanghetao 阅读(18490) 评论(0) 推荐(0) 编辑
摘要: 什么是 non-trivial default constructor, non-trivial copy constructor, non-trivial assignment operator, non-trivial destructor? 阅读全文
posted @ 2011-11-21 08:40 wanghetao 阅读(147) 评论(0) 推荐(0) 编辑