C++静态成员函数基本概念讲解
2011-01-09 23:41
399 查看
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. };
最后要说的一点是,静态成员是可以独立访问的,也就是说,无须创建任何对象实例就可以访问。
举例如下:
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. };
最后要说的一点是,静态成员是可以独立访问的,也就是说,无须创建任何对象实例就可以访问。
相关文章推荐
- C++静态成员函数基本概念讲解
- C++基本概念总结——静态成员
- C++基本之--静态成员函数和静态成员变量
- 关于c++中类静态成员函数可能破坏类封装性的问题
- C++静态成员函数小结(转)
- C++静态成员变量和静态成员函数
- c++静态成员函数与线程同步(static member functions and thread-safety)
- C++静态成员函数不能调用非静态成员变量
- (转)C++静态成员函数小结
- C/C++基础知识:函数指针和指针函数的基本概念
- C++ 类非静态成员函数作为线程入口函数实现
- C++静态成员函数详解
- (转) C++ 静态成员和函数的总结(不知道原创在哪里=。=)
- C++静态成员函数小结
- C++静态成员函数小结
- C++静态成员函数小结
- C++面向对象小结--静态成员函数
- C++ 类的静态成员详细讲解
- C++静态成员函数小结(转)
- C++ 静态成员变量和静态成员函数的练习