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