重複の可能性:
代替関数構文
複雑な関数テンプレートでは、パラメーターで使用するためにC ++ 11の末尾の戻り型構文が必要にdecltype
なる場合があります。そうしないと、スコープに入るのが遅すぎます。
template<typename T, typename U>
auto add(const T& a, const U& b) -> decltype(a + b)
{
return a + b;
}
通常の関数であっても、今後は常にこの新しい構文を使用する方が一貫性がありませんか?
auto main() -> int;
次に、最新のコードでは2つではなく1つの関数構文を処理するだけで済み、暗黙のintまたは暗黙のusing宣言を非推奨にしたのと同じように、古い構文を非推奨にすることができます。
新しい構文をより魅力的にするために、より適切なauto
名前に置き換えることができます。
#define def auto
そして突然、の署名はmain
関数型プログラマーにとって非常に魅力的に見えます。
def main() -> int;
私は何かを見落としていますか?末尾の戻り型の構文は、私が考えていなかった方法で劣っていますか?