мне нужно повторно выполнять вызовы к функции шаблона с разными классами, определенными в других местах в коде, например, так:Как создать массив для хранения C++ классов (не экземпляров), которые будут использоваться итеративно в шаблонной функции
MyTemplateFunction<ClassOne>(&AnotherTemplateFunction<ClassOne>);
MyTemplateFunction<ClassTwo>(&AnotherTemplateFunction<ClassTwo>);
MyTemplateFunction<ClassThree>(&AnotherTemplateFunction<ClassThree>);
MyTemplateFunction<ClassFour>(&AnotherTemplateFunction<ClassFour>);
Есть ли способ создать массив специализаций для классов ClassOne, ClassTwo и т. Д., Поэтому я могу просто перебрать массив для лучшей ремонтопригодности.
Редактировать: Я специально использую функцию register_exception_translator в Boost.Python. Поэтому у меня нет выбора. Его сторонняя функция, которую я должен назвать для всех моих классов, которые в моем проекте более 50. Повторение вызовов, подобных этому, было бесполезным при добавлении или изменении классов.
почему бы вам нужно сделать это? Возможно, вы ищете фабрику шаблонов: http://en.wikipedia.org/wiki/Factory_method_pattern –
@ Loïc Février: Я добавил свою причину. Его сторонняя функция. – sarshad