Форум программистов, компьютерный форум CyberForum.ru

Библиотека метапрограммирования - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ HOOK для продвинутых http://www.cyberforum.ru/cpp/thread401949.html
Есть полностью работоспособная пара DLL и EXE реализующая CBT-HOOK. Хочу расширить проект: в CBTProc могу парсить только заголовок окна GetWindowText, допустим я отловил событие explorer.exe - как узнать что делает приложение(окна типа Удаление файла не парсятся:(, а я ещё и путь хочу выжать к удаляемому файлу). Кто работал отзовитесь...
C++ Создание программы, которая управляет каталогом файлов. Люди помогите пожалуйста составить программу. Тема: Составить программу, которая управляет каталогом файлов. Сведения о каждом файле содержат: • Имя файла; • Дата создания • Количество обращений к файлу Программа должна решать следующие задачи: • Начальное формирование данных обо всех файлах в каталоге в виде списка. • Печать сведений о файле с наибольшим числом обращений. • Удаление... http://www.cyberforum.ru/cpp/thread397757.html
Кортежи, метафункции и все, все, все. C++
Цель — модифицировать заданный кортеж (например, "std::tuple") путём добавления в него новых типов или удаления существующих. Сперва попробовал создать кортеж при помощи "boost::mpl::vector" и "boost::mpl::inherit", но проблема в том, что результат эмпээлевских метафункций неопределён, и, например, "pop_back<vector>::type" не является вектором. А мне нужно получить честный кортеж (пусть даже и...
C++ 2 камеры в OpenCV
Здравствуйте. У меня возникла вот такая проблема. Я работаю с изображениями с камеры в OpenSUSE, используя OpenCV. Когда я читаю изображение с камеры самым простейшим кодом: #include <opencv/cv.h> #include <opencv/highgui.h> #include <stdlib.h> #include <stdio.h> int main() {
C++ Шифрование PKI http://www.cyberforum.ru/cpp/thread388999.html
нужна программа, написанная на любом виде языке программирования, которая осуществляла метод шифрования PKI. Если есть такая программка, пожалуйста, расскажите в кратце код...Заранее пасЫбо=)
C++ MPI и Borland C++ 5.0 Может, кто-нибудь знает, как настроить Borland C++ 5.02 на работу с библиотекой mpi? файлы в include, lib переместила, но как присоединить эту библиотеку к проекту - ума не приложу. Помогите, пожалуйста! подробнее

Показать сообщение отдельно
volovzi
267 / 169 / 8
Регистрация: 14.03.2010
Сообщений: 501

Библиотека метапрограммирования - C++

10.12.2011, 15:08. Просмотров 5041. Ответов 54
Метки (Все метки)

Увлекшись метапрограммированием, начатым в предыдущей теме, я решил написать небольшую библиотеку метафункций.

Изначально всё это предназначалось для работы с кортежами, но на самом деле оно применимо к любым шаблонным классам. В том числе возможна совместная работа с библиотекой "Boost.MPL" (но очень осторожная, т.к. в "Бусте" не используются списки типов переменной длины).

Отличие от аналогов, в том числе того же "Boost.MPL" состоит, в основном, в том, что результат всех метафункций предсказуем (в "Бусте" он неопределён). Второе отличие — отсутствие теоретических ограничений на количество типов в шаблонах.

Есть и новшества: я ввёл новый результат метафункции — шаблон, он же "pattern" (т.к. "template" уже является ключевым словом). Смысл его следует из названия: это не тип ("type") и не значение ("value"), а шаблон класса, который может быть в дальнейшем конкретизирован новыми типами (см. метафункцию "get_pattern").

Это первый вариант библиотеки, не влючающий итераторы. Они появятся в следующей версии.
Прошу ознакомиться, кому не лень, и с нетерпением жду отзывов и предложений.

Исходники, так же доступны и на GitHub: https://github.com/izvolov/Meta
клонировать так: git clone git://github.com/izvolov/Meta.git
Вложения
Тип файла: zip meta.zip (46.7 Кб, 47 просмотров)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru