类的静态成员函数

来源:互联网 发布:php微信开发 编辑:程序博客网 时间:2024/04/29 12:09

在一次代码移动和重组编辑中,发现有一些函数是几个类共用的一些算法实现函数,使用了类的静态成员函数。

添加一个类 Utility, 如下所示:

Class Utility
{
    Utility();
    ~Utility();

    static bool InCicle()
    {
        ...
        return true;
    }
};

在使用该静态成员函数时:

if( Utility::InCircle() ) {  ... }

直接使用类名作为限定符来调用静态成员函数即可,不需要声明该类的对象。

也可以声明类的对象,像普通的类的成员函数一样使用,如下所示:

Utility m;

if( m.InCircle() ) { ... }

简单总结了一下类的静态成员函数的一些特点:

1. 在不存在类的对象时,它们仍然存在,而且可以调用;

2. 不能访问调用它的对象, 没有this指针; 故不能使用 const关键字,静态成员函数不能声明为const, 也无法访问属于类对象的非静态数据成员和非静态成员函数。

0 0
原创粉丝点击