用于声明函数模板的5种新语法是什么?

时间:2016-04-13 19:50:31

标签: c++ c++-concepts

This视频指出了当前TS版本概念的一些问题,其中之一是:

  

用于声明函数模板的5种新语法

没有给出例子。 所以我的问题是他们是什么?

1 个答案:

答案 0 :(得分:5)

鉴于琐碎的概念定义:

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