类的静态成员

2020-10-11  本文已影响0人  李伟13

类的静态成员

1.类为什么需要静态成员?

类的成员与类本身直接相关,而非与类的各个对象保持关联。例如银行账户类需要一个数据成员表示当前的基准利率,一旦利率浮动,所有对象都能使用新值。故使用静态成员。

2.类静态成员的声明

在成员声明前加static

#include <string>

using namespace std;

class Account
{
public:
//成员函数不通过作用域运算符就可以直接使用静态成员interestRate
    void calculate(){amount += amount * interestRate;}
    static double rate();
    static void rate(double);
private:
    string owner;
    double amount;
    static double interestRate;
    static double initRate();
};

//类外定义
void Account::rate(double newRate)
{
    interestRate = newRate;
}

3.使用类的静态成员

int main()
{
    double r;
    r = Account::rate();

    Account ac1;
    Account *ac2 = &ac1;
    r = ac1.rate();
    r = ac2 -> rate();
    return 0;
}

成员函数不通过作用域运算符就可以直接使用静态成员,如第一段代码注释所示

上一篇 下一篇

猜你喜欢

热点阅读