Ошибка компилятора C2483
"идентификатор": объект с конструктором или деструктором не может быть объявлен "thread"
Это сообщение об ошибке устарело в Visual Studio 2015 и более поздних версиях. В предыдущих версиях переменные, объявленные с помощью атрибута thread
, нельзя инициализировать с помощью конструктора или другого выражения, требующего оценки во время выполнения. Для инициализации thread
данных требуется статическое выражение.
Пример
Следующий пример создает C2483 в Visual Studio 2013 и более ранних версиях.
// C2483.cpp
// compile with: /c
__declspec(thread) struct A {
A(){}
~A(){}
} aa; // C2483 error
__declspec(thread) struct B {} b; // OK