Можно ли использовать volatile для объектов класса? Нравиться:
volatile Myclass className;
Проблема в том, что он не компилируется, везде, где вызывается какой-либо метод, ошибка говорит: ошибка C2662: «функция»: невозможно преобразовать указатель «этот» из «изменчивого MyClass» в «MyCLass &»
В чем здесь проблема и как ее решить?
РЕДАКТИРОВАТЬ:
class Queue {
private:
struct Data *data;
int amount;
int size;
public:
Queue ();
~Queue ();
bool volatile push(struct Data element);
bool volatile pop(struct Data *element);
void volatile cleanUp();
};
.....
volatile Queue dataIn;
.....
EnterCriticalSection(&CriticalSection);
dataIn.push(element);
LeaveCriticalSection(&CriticalSection);
volatile
не гарантирует потокобезопасности. Это отличается, например, от .NET, где это так. - person sbi   schedule 20.06.2010