У меня проект отлично работает под MSVS 2010 SP1. Я пытаюсь преобразовать его в MSVS 2012 RC. Мне пришлось изменить некоторые вещи, в основном связанные с путями заголовков/библиотек C++ и пользовательскими вещами MFC. Но мне осталось преодолеть одно последнее препятствие.
В MSVC 2010 я использую много unordered_map
или map
. Он компилируется нормально. Но в MSVS 2012 я просто получаю эту ошибку:
«Стандарт C++ не предоставляет хэш для этого типа»
После небольшого поиска в сети я обнаружил, что MSVS 2012 должен быть более близок к стандарту C++11, и что стандарт определяет только хэш функции для базовых типов и 4 определенных строковых типа (среди них string
и wstring
, но basic_string
не включены).
Поэтому я изменил все basic_string
на wstring
, но безрезультатно... Я все еще получаю ту же ошибку.
Что нужно сделать, чтобы снова скомпилировать приложение?