请注意,这不是C++中的含义 - >意味着什么?
这个问题特定于C++ 11; 函数可以是这样的:
struct string_accumulator {
}
inline auto collect() -> string_accumulator
{
return string_accumulator();
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下, - >的含义是什么?
这是一个尾随的返回类型.它可用于显式指定lambda表达式的返回类型或指定依赖于函数的arugments的返回类型.例子:
[](int) -> float { return 0.f; };
template <typename A, typename B>
auto foo(A a, B b) -> decltype(a + b) { return a + b; }
Run Code Online (Sandbox Code Playgroud)