c++中static成员函数、成员变量作用
2017-07-23 16:23
120 查看
当函数的行为对所有的派生类都一致时,可以将其声明为静态成员函数。
好处:
1.可以实现某些特殊的设计模式。如:Singleton
2.可以把某些系统的回调函数以静态函数的形式封装到类的内部。因为系统API的回调函数通常都是独立的,没有this指针。
3.可以封装某些算法。
4.静态函数不需要实例化就可以被调用,所以,一切不需要实例化就可以有确定行为方式的函数都应该封装成静态成员函数。
static成员变量不属于对象,属于类。对派生类来讲,所有派生类与基类共有static成员。
static成员变量必须在类外初始化,并且不能被声明为const。
成员变量的作用:
1.避免名字冲突,因为每一个成员变量都属于类,在类的作用域中。
2.结构更加清晰。
3.可以封装为私有。
好处:
1.可以实现某些特殊的设计模式。如:Singleton
2.可以把某些系统的回调函数以静态函数的形式封装到类的内部。因为系统API的回调函数通常都是独立的,没有this指针。
3.可以封装某些算法。
4.静态函数不需要实例化就可以被调用,所以,一切不需要实例化就可以有确定行为方式的函数都应该封装成静态成员函数。
static成员变量不属于对象,属于类。对派生类来讲,所有派生类与基类共有static成员。
static成员变量必须在类外初始化,并且不能被声明为const。
成员变量的作用:
1.避免名字冲突,因为每一个成员变量都属于类,在类的作用域中。
2.结构更加清晰。
3.可以封装为私有。
相关文章推荐
- 【c++】内存偏移、成员函数和成员变量、static成员函数、变量
- C/C++---static函数,static成员函数,static变量,static成员变量 再来理一理
- static成员函数、成员变量
- C++ 两个包含类互相调用彼此的类成员变量和方法
- C++成员函数末尾const关键字的作用
- c++成员变量初始化问题
- C/C++的变量生存期和作用域
- static作用(修饰函数、局部变量、全局变量) C/C++中static关键字详解
- C++中修改const成员变量
- C++ 类中特殊的成员变量(常变量、引用、静态)的初始化方法
- C++继承之成员变量
- C++ 的一个问题的理解(私有变量成员)
- 【C++】 私有成员变量的理解
- c++成员变量初始化
- C++中的静态数据成员的作用与好处
- c++中成员变量的初始化顺序
- c++ 数组作为成员变量
- C++中成员变量加上static或const关键字后的分析
- C++成员变量的初始化顺序问题
- Way on c & c++ 小记 [五] – 初始化列表与成员函参作用域