Можете ли вы поделиться какими-либо реальными примерами использования Boost :: MPL (кроме лямбда-выражений), чтобы я мог лучше понять его цели а область практического использования? Учебник по документации MPL имеет размер ...
Я использовал что-то как следующее для создания политик для моего приложения: занятия по политике похожи на это: политика структуры {статическая пустота init (); статическая пустая очистка ();//...};...
Фон Это для диспетчера памяти в игровом механизме. Мне реализовали freelist и хотел бы иметь список времени компиляции если они. (MPL или вектор Fusion, например). freelist's...
У меня есть шаблонный шаблон класса <класс U, класс V, класс W> класс S {//... реализации}; и некоторый запас вводит реализации для типа U, V и W: повышение определения типа:: mpl:: вектор <U0, U1&...
мне нужен mpl:: равняйтесь как процедура, которая поддерживает рекурсию на типах. пространство имен mpl = повышение:: mpl; BOOST_MPL_ASSERT ((mpl:: равный <mpl:: вектор <интервал, символ>, имя типа mpl:: push_back <mpl::...
Это - насколько я добрался, #include <boost/mpl/list.hpp> #include <алгоритм> пространство имен mpl = повышение:: mpl; класс RunAround {}; класс HopUpAndDown {}; класс Сон {}; шаблон <...
Я хочу сделать что-то вроде этого: template
char * foo () {// возвращает строку времени компиляции, содержащую N, что эквивалентно выполнению // ostringstream ostr; // ostr << N; // return ...
Я написал код для генерации boost :: mpl :: vector для использования в качестве таблицы поиска для функции факториала, как тест для более общей библиотечной функции, с помощью которой разработчик может создать ...
Рассмотрим следующий файл заголовка: // Foo.h
class Foo {public: template недействительное чтение (T & значение);
}; Я хочу явно создать экземпляр члена Foo :: read ...
Привет, в документации boost mpl у меня есть обнаружил mpl :: string и следующий пример: typedef mpl :: string <'hell', 'o wo', 'rld'> hello; Я немного удивлен, потому что думал, что в C или ...
Поскольку метапрограммирование C++ является функциональным :, есть ли способ сделать что-то, сравнимое с любым функциональным языком программирования (, например. Haskell )пусть или где построят? Я использую Boost ::MPL, но хотел бы...
Контекст У меня есть собственный компаратор, который берет другой компаратор и применяет дополнительную проверку :template class Comparator, typename T> структура SoftOrder :общедоступная...
Итак, у меня есть класс шаблона, который я хотел бы принять std::map, где тип данных является либо необработанным указателем, либо std::unique_ptr. Затем в этом классе я хотел бы получить тип базового...
В настоящее время я делаю некоторые доказательства на концептуальных примерах с boost ::mpl, и у меня возникли некоторые трудности с пониманием того, как лямбда-функция позволяет использовать заполнители. Я понимаю, что могу обернуть...
Я хочу взять список шаблонов классов, T1, T2, ... TN и получить список MPL список классов, где каждый шаблон создается с тем же параметром. boost :: mpl :: list нельзя использовать с ...
Я считаю, что мое понимание boost::mpl::set должно быть в корне ошибочным. Я думал, что разрешены только уникальные типы. Но компилируется следующий код: #include
#include <...
У меня есть функция, которую я хочу выполнить для всех типов в списке типов (в настоящее время представленном списком mpl --- это вообще разумный подход?). Ключевым моментом здесь является то, что функция только ...
Generally, I would use boost::mpl::for_each<>() to traverse a boost::mpl::vector, but this requires a functor with a template function declared like the following: template ...
На самом деле простой вопрос, позвольте мне дать некоторую предысторию: у меня есть mpl :: vector типов, где у каждого типа есть идентификатор, во время выполнения я использую mpl :: for_each для перебора этого вектора и нахождения соответствия ...
Я пытаюсь создать список, содержащий перестановки данного списка типов. Приведенный ниже код, похоже, работает, хотя и без ожидаемого результата, когда я использую указанный список вместо генерации ...
Я создал физическую систему, которая обрабатывает любой объект столкновения с любым объектом столкновения, например: namespace Collision
{template inline void Check (T & t, U & ...
I have the following templated class structure struct TraitA{};
struct TraitB{}; template
struct FunctionalityA{}; template
struct FunctionalityB{}; ...
У меня есть вопрос относительно параметров наилегчайшего веса, учитывая приведенное ниже определение, основанное на http://www.boost.org/doc/libs/1_40_0/libs/flyweight/test/ test_basic.cpp typedef boost :: flyweights :: flyweight <...
У меня есть класс A, который имеет параметр шаблона T. Есть случаи использования, когда класс T предлагает функцию func1(), а есть случаи, когда T ее не предлагает.
Функция f() в A должна вызывать ...
У меня есть набор классов, которые имеют следующую структуру: класс U
{
Public: u (int) {...} u () {...} init (int) {...}
}; Мне нужно иметь возможность составлять 1 или более из этих классов ...
Я использую класс A из библиотеки и хочу добавить к нему некоторые функции через собственный класс B.
Пользователь класса B должен быть производным от него, как если бы он был производным от класса A. class A {public: ...
Я новичок в библиотеках boost :: fusion и boost :: mpl. Может ли кто-нибудь рассказать мне основное различие между этими двумя библиотеками? До сих пор я использовал только fusion :: vector и несколько других простых вещей. А теперь ...
Я хочу наследовать от набора классы, содержащиеся в увеличении mpl :: vector. Это возможно? В частности, я хочу расширить тест для произвольного множества параметров шаблона, переданных как mpl :: vector. ...
Я пытаюсь объединить строки во время компиляции использую boost-mpl, но получаю ошибки от gcc. Вот пример - использование увеличения пространства имен;
используя пространство имен std; шаблон <класс A>
struct type ...