2017-09-21 9 views
-3

これは、What does -> mean in C++?関数シグネチャの中でC++ 11で - >の意味は何ですか?

の重複ではありません。この質問はC++ 11に固有のものです。関数は次のようになります。

struct string_accumulator { 
} 


inline auto collect() -> string_accumulator 
{ 
    return string_accumulator(); 
} 

このコンテキストでは、 - >とはどういう意味ですか?

+0

私はダウンワードはしませんでしたが、あなたのタイトルはより具体的であると思います。「関数宣言には何がありますか?」 – R2RT

答えて

5

これはtrailing return typeです。これを使用して、ラムダ式の戻り値の型を明示的に指定したり、関数のarugmentsに依存する戻り値の型を指定することができます。例:

+0

戻り値の型を関数のスコープに入れるだけでも少し役に立ちます。 'MyNS :: MyClass :: MyNestedTypeの代わりにMyNS :: MyClass :: f(){return {}; } '、あなたは' auto MyNS :: MyClass :: f() - > MyNestedType {return {}; } ' – aschepler

関連する問題