C++静态成员函数基本概念讲解

1.C++静态成员函数的地址可用普通函数指针储存,而普通成员函数地址需要用 类成员函数指针来储存。 举例如下:

   1. class base{   
   2. static int func1();   
   3. int func2();   
   4. };   
   5. int (*pf1)()=&base::func1;//普通的函数指针   
   6. int (base::*pf2)()=&base::func2;//成员函数指针

2.静态成员函数不可以调用类的非静态成员。因为C++静态成员函数不含this指针。

3.C++静态成员函数不可以同时声明为 virtual、const、volatile函数。
举例如下:

   1. class base{   
   2. virtual static void func1();//错误   
   3. static void func2() const;//错误   
   4. static void func3() volatile;//错误   
   5. };

最后要说的一点是,静态成员是可以独立访问的,也就是说,无须创建任何对象实例就可以访问。

posted @ 2011-01-09 23:41  dzqabc  阅读(1141)  评论(0编辑  收藏  举报