Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Converters in Detail

Boost , Chapter 1. Boost.Convert 2.0 , Chapter 1. Boost.Convert 2.0

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Целью конвертера является

  • Используйте функциональность и производительность<boost::lexical_cast>, к которым многие люди привыкли и которым комфортно;
  • Продемонстрировать, каким образом существующие независимые средства преобразования/трансформации могут быть включены вBoost.ConvertОсновы.

Преобразователь может легко заменить<boost::lexical_cast>, добавляя гибкость и удобство:

#include <boost/convert.hpp>
#include <boost/convert/lexical_cast.hpp>
#include <boost/detail/lightweight_test.hpp>
using std::string;
using boost::convert;
using boost::lexical_cast;
struct boost::cnv::by_default : public boost::cnv::lexical_cast {};

int    i1 = lexical_cast<int>("123");         // Throws if the conversion fails.
int    i2 = convert<int>("123").value();      // Throws if the conversion fails.
int    i3 = convert<int>("uhm").value_or(-1); // Returns -1 if the conversion fails.
string s1 = lexical_cast<string>(123);
string s2 = convert<string>(123).value();
BOOST_TEST(i1 == 123);
BOOST_TEST(i2 == 123);
BOOST_TEST(i3 == -1);
BOOST_TEST(s1 == "123");
BOOST_TEST(s2 == "123");

Смотрите<boost::cnv::lexical_cast implementation>подробностей.

Для того, чтобы определенный пользователем тип был интегрирован в структуру<boost::lexical_cast>и, следовательно, развернут с преобразователем<boost::cnv::lexical_cast>:

Первые два требования предъявляются к конструкции и реализации<boost::lexical_cast>, а последние два требования к базовому<std::stringstream>двигателю.


PrevUpHomeNext

Статья Converters in Detail раздела Chapter 1. Boost.Convert 2.0 Chapter 1. Boost.Convert 2.0 может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Chapter 1. Boost.Convert 2.0 ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 22:26:53/0.0064969062805176/0