Мне нужно работать с целыми числами, превышающими unsigned long long, поэтому, как я читал здесь, я установил boost multiprecision.
Я установил его с помощью
Код: Выделить всё
vcpkg.exe upgrade boost-multiprecision:x64-windows
Ошибка в библиотека boost
или в текстовом формате, но невозможно:
Код: Выделить всё
Severity Code Description File Line Suppression State Details
Ошибка C2582 Функция 'operator =' недоступна в 'boost ::multiprecision::backends::float128_backend' C:\dev\vcpkg\installed\x64-windows\include\boost\multiprecision\number.hpp 121
Ошибка C2027 использование неопределенного типа 'boost: :multiprecision::backends::float128_backend' C:\dev\vcpkg\installed\x64-windows\include\boost\multiprecision\number.hpp 454
Ошибка C2039 "значение": не является членом из 'std::is_convertible'
with
[
T=boost::multiprecision::float128,
Num=boost::multiprecision::numberboost: :multiprecision::backends::float128_backend,boost::multiprecision::et_off
] C:\dev\vcpkg\installed\x64-windows\include\boost\multiprecision\detail\number_base.hpp 156
Ошибка C2065 «значение»: необъявленный идентификатор C:\dev\vcpkg\installed\x64-windows\include\boost\multiprecision\detail\number_base.hpp 156
Ошибка C2975 «_Val» : неверный аргумент шаблона для 'std::integral_constant', ожидаемое выражение константы времени компиляции C:\dev\vcpkg\installed\x64-windows\include\boost\multiprecision\detail\number_base.hpp 156
Ошибка C2139 'boost::multiprecision::backends::float128_backend': неопределенный класс не разрешен в качестве аргумента для встроенного типа компилятора '__is_abstract' C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools \MSVC\14.39.33519\include\type_traits 662
Ошибка C2139 'boost::multiprecision::backends::float128_backend': неопределенный класс не разрешен в качестве аргумента для встроенного типа компилятора '__is_constructible ' C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\type_traits 749
Ошибка C2139 'boost::multiprecision::backends::float128_backend ': неопределенный класс не разрешен в качестве аргумента для свойства внутреннего типа компилятора '__is_convertible_to' C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\type_traits 323
Ошибка C3770 «неизвестный тип»: недопустимый базовый класс C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\type_traits 323
(Precision, все эти файлы не мои, а из boost:multiprecision)
Я не понимаю, почему у меня возникают эти ошибки.Свойства моего проекта:
- Версия Windows SDK: 10.0
- Платформа: Visual Studio 2022 (v143)
- (обновлено до последней версии) Язык C++ Стандарт: ISO C++20
- Оптимизация: отключено (я в режиме отладки) ).
Я пытаюсь обновить библиотеку Boost, но у меня последняя версия.
Я пробую другую библиотеку, но код работает очень медленно по сравнению со старым кодом.
Подробнее здесь: https://stackoverflow.com/questions/781 ... on-library