Как использовать оператор декремента для статической переменной в классе - PullRequest
2 голосов
/ 20 марта 2012
class AccountManager
{
private:
    Account accountlist[100];
    int *accountNumber;
    Account* SuperVipAccount; 
    static int ManagerNumber;
public
    int getManagerNumber() const;
};

У меня есть такой класс, и я хочу использовать оператор декремента в "getManagerNumber", чтобы ManagerNumber был минус один, что мне делать?

Ответы [ 2 ]

4 голосов
/ 20 марта 2012

ManagerNumber является static членом AccountManager (общим для класса, а не для объекта), поэтому вы можете очень хорошо уменьшить его .
Правильность const методане распространяется на static участников.

int getManagerNumber() const
{
  -- ManagerNumber;  // ok
  return ManagerNumber;
}
0 голосов
/ 20 марта 2012
class AccountManager
{
static int ManagerNumber;
}

AccountManager::ManagerNumber=0;

 int AccountManager::getManagerNumber()
    {
    return --ManagerNumber;
    }
...