Инициализируйте неконстантные статические переменные-члены в C ++ через статическую функцию-член - PullRequest
3 голосов
/ 17 декабря 2011

Я пытаюсь сделать следующее и получаю сбой эмулятора между двумя операторами журнала.Что-то не так?

protected:
    static int maxSize;
public:
    static void setFontSizeRange(int max) {
        Log("here %d->%d", max, maxSize);
        maxSize = max;
        Log("ok");
    }

Я могу получить журнал для воспроизведения параметра, но он вылетает до вывода статического члена (поэтому первый показанный выше журнал не будет работать, пока он ссылается на это).*

Спасибо.

1 Ответ

2 голосов
/ 17 декабря 2011

Вы должны определить статический член.

class Something
{
protected:
    static int maxSize;
public:
    static void setFontSizeRange(int max) {
        Log("here %d->%d", max, maxSize);
        maxSize = max;
        Log("ok");
    }
}; // class declaration ends here...

int Something::maxSize = 0;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...