Что бы я хотел сделать, это примерно так:
template <class DataType>
DataType myFunc(DataType in)
{
...
}
typedef myFunc<int> myFunc_i;
myFunc_i(37);
... однако, typedefs нельзя использовать для таких функций, как это в С++. Мне было интересно, что люди предпочитают альтернативы в этом случае? Единственными, о которых я могу думать, являются:
1) Просто с этим справитесь и всегда используйте синтаксис myFunc 2) Вручную создайте функцию обертки, т.е.
inline int myFunc_i(int in)
{
return myFunc<int>(in);
}
Это сработает, но будет иметь недостаток в необходимости дополнительного обслуживания и возможности его выхода из синхронизации (т.е. если вы измените подпись функции для myFunc).
Мысли?