Я создаю систему событий. Он основан на boost :: сигналы. Чтобы упростить работу, я использую typedef для сигнатур функций.
Все хорошо, пока мне не нужно создать системный метод какого-то нового события. Я должен создать typedef динамически по заданному типу для функции шаблона. Проблема заключается в названии typedef.
Какой-нибудь псевдокод у меня будет:
template<typename EventType>
void create(const string &signalName)
{
typedef EventType signalName;
// ...
}
Можно ли создать такой typedef (их имена) с какой-нибудь переданной строкой или данными или чем-то еще? Я не хочу заботиться об этом.
UPD : Итак, у меня есть список функций-подписей typedefs - события. У меня есть некоторые шаблонные функции для подключения слотов, например. Я не хочу заставлять пользователя каждый раз снова вводить подпись своими руками (пользователь - программист, который будет использовать систему событий). Поэтому я просто использую свои определения типов из специального пространства имен в аргументе шаблона.