| 发表于:2007-03-29 13:28:345楼 得分:0 |
看到程序里有些地方的回调函数用了普通的成员函数,有些回调函数则定义成静态成员函数;将回调函数则定义成静态成员函数的好处是什么? 1.静态成员函数可以直接用类名来调用 a::f(); 2.静态成员函数可以用普通的函数指针来指向 int (*p)()=a::f 3.静态成员函数没有this指针 4.静态成员函数可以决定它内部的静态数据成员的定义时间, 如static int f(){static int x=6;} 在调用这个函数的时候x才定义,否则静态数据成员的定义时间不定 | | |
|