![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Implementation of Float128 typeBoost , Math Toolkit 2.5.0 , Chapter 3. Specified-width floating-point typedefs
|
![]() |
Tip |
---|---|
Для GCC составьте< |
Тип<__float128
>обеспечивается библиотекойлибквадматана GCC или библиотекой Intel FORTRAN с Intel C++. Они также обеспечивают полный набор функций<<cmath>
>в<namespace
std
>.
[quadmath_snprintf_1]
Исходный код находится по адресуquadmath_snprintf.c.
float128
quadmath type
Для программ на C++ вы захотите использовать тип C++<float128
>
См. пример вcstdfloat_example.cpp.
Типичным вызовом компилятора является
g++ -O3 -std=gnu++11 test.cpp -I/c/modular-boost -lquadmath -o test.exe
![]() |
Tip |
---|---|
Если вы пытаетесь использовать развивающийся филиал Boost. Затем< |
g++ -O3 -std=gnu++11 test.cpp -I/c/modular-boost/libs/math/include -I/c/modular-boost -lquadmath -o test.exe
![]() |
Note |
---|---|
До сих пор единственной недостающей деталью, которую мы отметили, была попытка использовать< Link fails: undefined reference to typeinfo for __float128. См.GCC Bug 43622 - no C++ typeinfo for __float128. Но об этом сообщает (Marc Glisse 2015-04-04 ) зафиксированный в GCC 5 (и выше). Например, с GCC6.1.1 это работает так, как ожидается, дляискалеченногоназвания строки и вывода (если это возможно - не всегда). const std::type_info& tifu128 = typeid(__float128); // OK. //std::cout << tifu128.name() << std::endl; // On GCC, aborts (because not printable string). //std::cout << typeid(__float128).name() << std::endl; // Aborts - string name cannot be output. const std::type_info& tif128 = typeid(float128); // OK. std::cout << tif128.name() << std::endl; // OK. std::cout << typeid(float128).name() << std::endl; // OK. const std::type_info& tpi = typeid(pi1); // OK GCC 6.1.1 (from GCC 5 according to http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43622) std::cout << tpi.name() << std::endl; // Output mangled name: // N5boost14multiprecision6numberINS0_8backends16float128_backendELNS0_26expression_template_optionE0EEE |
Статья Implementation of Float128 type раздела Math Toolkit 2.5.0 Chapter 3. Specified-width floating-point typedefs может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Chapter 3. Specified-width floating-point typedefs ::
реклама |