Непосредственное определение не шаблонной функции в терминах шаблонной функции - PullRequest
0 голосов
/ 16 июня 2019

Могу ли я дать конкретному экземпляру функции-шаблона имя, чтобы оно могло называться как не шаблонная функция?

например.,

// some template function
template <typename T>
void foo(T t) {...}

// I would like int_foo to behave like a regular function with
// foo<int> as its implementation (obviously this doesn't compile because
// using cannot be used like this)
using int_foo = foo<int>;

Один из способов - просто делегировать и полагаться на встраивание, чтобы сделать все остальное, например:

void int_foo(int i) {
    foo<int>(i);
}

... но если есть более прямой путь, я весь слух.

1 Ответ

2 голосов
/ 16 июня 2019

Нет, нет, для которого не требуется 30 символов, но все ответы нужны.

...