声明函数模板的 5 种新语法是什么?
What are 5 new syntaxes for declaring a function template?
This 视频说明了当前 TS 版本概念的一些问题,其中之一是:
5 new syntaxes for declaring a function template
没有给出例子。
所以我的问题是它们是什么?
鉴于琐碎的概念定义:
template <class T> concept bool C = true;
我们可以将相同的函数模板 f
声明为:
template <class T> requires C<T> void f(T);
template <class T> void f(T) requires C<T>;
template <C T> void f(T); // colloquially known as "terse" syntax
C{T} void f(T); // template introduction syntax
void f(C); // abbreviated function template syntax
This 视频说明了当前 TS 版本概念的一些问题,其中之一是:
5 new syntaxes for declaring a function template
没有给出例子。 所以我的问题是它们是什么?
鉴于琐碎的概念定义:
template <class T> concept bool C = true;
我们可以将相同的函数模板 f
声明为:
template <class T> requires C<T> void f(T);
template <class T> void f(T) requires C<T>;
template <C T> void f(T); // colloquially known as "terse" syntax
C{T} void f(T); // template introduction syntax
void f(C); // abbreviated function template syntax