оператор стрелки ( - > ) в заголовке функции


Я нашел такой код:

template <typename T, typename T1> auto compose(T a, T1 b) -> decltype(a + b) {
   return a+b;
}

Я понял со всеми деталями, которые были новыми для меня, но один. Подскажите пожалуйста, где можно почитать о том, что делает оператор стрелки (->) означает в заголовке функции? Я думаю чисто логически, что -> оператор определяет тип, который будет получен auto, но я хочу получить это прямо, но не могу найти информацию.

2 77

2 ответа:

в C++11, есть два синтаксиса для объявления функции:

return-typeидентификатор(

на простом английском языке он говорит, что возвращаемый тип является выводимым типом суммы a и b.