静态成员与静态函数
来源:互联网 发布:linux 查看hba卡型号 编辑:程序博客网 时间:2024/05/22 08:21
静态成员函数可以直接访问该类的静态数据和函数成员,而访问非静态数据成员必须通过参数传递的方式得到一个对象名,然后通过对象名来访问。
class Myclass
{
private:
public:
};
int Myclass::Sum=0;
Myclass::Myclass(int a,int b,int c)
{
}
void Myclass::GetSum()
{
}
int main(void)
{
}
由上例可知,非静态成员函数可以任意地访问静态成员函数和静态数据成员。
非静态成员函数Myclass(int a,int b,int c)和GetSum()都访问了静态数据成员Sum。
静态成员函数不能访问非静态成员函数和非静态数据成员。
关于静态成员函数,可以总结为以下几点:
出现在类体外的函数定义不能指定关键字static;
静态成员之间可以相互访问,包括静态成员函数访问静态数据成员和访问静态成员函数;
非静态成员函数可以任意地访问静态成员函数和静态数据成员;
静态成员函数不能访问非静态成员函数和非静态数据成员;
由于没有this指针的额外开销,因此静态成员函数与类的全局函数相比速度上会有少许的增长;
调用静态成员函数,可以用成员访问操作符(.)和(->)为一个类的对象或指向类对象的指针调用静态成员函数,
当同一类的所有对象使用一个量时,对于这个共用的量,可以用静态数据成员变量,这个变量对于同一类的所有的对象都取相同的值。静态成员变量只能被静态成员函数调用。静态成员函数也是由同一类中的所有对象共用。只能调用静态成员变量和静态成员函数。
- 静态成员与静态函数
- 静态成员与静态函数
- 静态成员与静态成员函数
- 静态成员函数与静态数据成员
- 静态成员函数 与 静态数据成员
- 静态成员函数与静态数据成员
- 静态数据成员与静态成员函数
- 静态成员变量与静态成员函数
- 静态成员变量 与 静态成员函数
- 静态成员变量与静态成员函数
- c++静态成员与静态成员函数
- 静态成员与静态成员函数
- 静态成员变量与静态成员函数
- 成员函数与静态函数
- 静态变量与静态成员函数
- 继承与静态成员函数
- C++静态成员与函数
- 静态成员函数与非静态成员函数的区别
- spring+mybatis的优缺点
- 史上最简单的SpringCloud教程 | 第十二篇: 断路器监控(Hystrix Dashboard)
- Mysql 5.7 开启远程连接
- 第四次作业
- 使用PowerDesigner设计数据库
- 静态成员与静态函数
- 欢迎使用CSDN-markdown编辑器
- 数据库设计规范
- 简易迷宫--递归算法实现
- C++ 内部链接与外部链接
- 从svn检出来的项目到本地,如何取消和svn的关联
- 51Nod-1293-球与切换器
- Deep Learning
- Linux常用系统函数