Re[13]: Rust vs C++ 17
От: red75  
Дата: 10.01.16 03:58
Оценка: +1
Здравствуйте, Evgeny.Panasyuk, Вы писали:


R>>Я где-то тут приводил темплейтно/макросный ужас, который нужен для более-вменяемого discriminated union.


EP>Готовый Boost.Variant есть уже больше 13 лет — бери и используй. Если хочется реализовать свой, то на C++14 он реализуется на порядки проще чем на C++98.


Отсутствие прямой поддержки языком сложно компенсировать. Нормальный pattern-matching c case totality check библиотекой не сделаешь. А так можно, конечно, и гланды ректально вырезать.

Почему boost::variant требует динамическое выделение памяти: http://www.boost.org/doc/libs/1_59_0/doc/html/variant/design.html#variant.design.never-empty.heap-backup-solution
Небольшая библиотечка, которая работает начиная с gcc 4.7, то есть 4 года, позволяющая более-менее комфортно извлекать значения из variant https://github.com/exclipy/inline_variant_visitor
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.