Почему при инициализации Volatile статического члена возникает ошибка компиляции переопределения?

Моя проблема заключается в следующем:

У меня есть класс со статическим счетчиком.
Я установил этот счетчик как volatile, потому что я использую эту переменную в многопоточной среде.

class.h

class myClass
{
public:
volatile static int mCounter;
(...)
};

class.cpp

int myclass::mCounter = 0;

В файле CPP я инициализирую его и получаю следующую ошибку компиляции:

'mCounter' : redefinition; different type modifiers

Зачем ?

Заранее спасибо.

0

Решение

Вам также необходимо повторить «volatile» в этой строке.

4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]