导航

文章分类 -  编程技术

一些乱七八糟想法~
摘要:一个全局对象管理类 作者:Panic 全局对象主要存在三个比较大的问题: 一:全局对象的构造顺序是无法确定的,完全取决于编译器的实现。有些全局对象具有相互之间的依赖性,需要满足一定的构造或者析构顺序,这种不确定的构造顺序有可能会造成难以预料的错误。 二:全局对象的构造/析构函数有可能会抛出异常,据我所知,主流C++编译器并不提供捕获全局对象构造/析构函数异常的机制。 三... 阅读全文

posted @ 2005-01-13 19:40 Panic 阅读(972) 评论(0) 推荐(0)

摘要:struct在代码中常见两种形式: struct A { //... }; struct { //... } A; 这其实是两个完全不同的用法: 前者叫做“结构体类型定义”,意思是:定义{}中的结构为一个名称是“A”的结构体。 这种用法在typedef中一般是: typedef struct tagA //故意给一个不同的名字,作为结构体的实名 { //... } A; //结构体的别名。 ... 阅读全文

posted @ 2005-01-13 11:50 Panic 阅读(670) 评论(5) 推荐(0)

摘要://不常用的宏指令,连接两个符号。例如 A##B ,实际结果是 AB #define ADD(a,b) b##a //暗地里合成自己的名字 #define MYNAME ADD(ic,pan) //隐式把名字映射成一个常用类型 typedef int MYNAME ; //实际代码 panic f() { return 0; } //如果有人把名字替换成别的:比如Mike //就会产生... 阅读全文

posted @ 2005-01-12 15:59 Panic 阅读(397) 评论(2) 推荐(0)

摘要:在VCKBase看到一段代码: int func(int x) { int countx = 0; while(x) { countx ++; x = x&(x-1); } return countx; } 这里的x&(x-1)很眼熟的样子~ 想起来以前看过一段FFT的代码,... 阅读全文

posted @ 2005-01-07 14:39 Panic 阅读(429) 评论(0) 推荐(0)