ホームページ >バックエンド開発 >C++ >追跡するか追跡しないか: C 11 の追跡戻り型を新しいデフォルトにする必要がありますか?

追跡するか追跡しないか: C 11 の追跡戻り型を新しいデフォルトにする必要がありますか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-03 20:20:12336ブラウズ

To Trail or Not to Trail: Should C  11's Trailing Return Type Be the New Default?

新しい C 11 プログラムでは、末尾の戻り値の型構文をデフォルトにする必要がありますか?

C 11 では、戻り値の型を配置する新しい関数構文が導入されました。関数パラメータの後:

auto func_name(int x, int y) -> int;

これは従来のパラメータとは異なります。構文:

int func_name(int x, int y);

可用性にもかかわらず、末尾戻り型構文の採用は遅れています。この記事では、この構文の長所と短所を検討して、新しい C 11 プログラムのデフォルトにするべきかどうかを判断します。

後続戻り型構文の利点

特定の状況末尾の戻り値の型を使用する必要があります。たとえば、ラムダ式やスコープ内の引数名で decltype を利用する場合などです。さらに、後続の戻り値の型には読みやすさの利点があります。

  • 非インライン メンバー関数を定義するときにメンバーの typedef を繰り返す必要はありません。
  • 後続の戻り値の型が使用される場合、関数名は整列されます。

末尾戻り型の欠点構文

後続戻り型構文の主な欠点は、スタイルが混在したコードが生成される可能性があり、見た目が不快になる可能性があることです。ただし、この問題は、コード ベース全体で一貫して末尾の戻り値の型構文を採用することで軽減できます。

結論

末尾の戻り値の型の構文には利点がありますが、欠点がないわけではありません。その使用は現在広く普及していませんが、有効な用途があります。新しい C 11 プログラムのデフォルトにするかどうかは、個人的な好みの問題です。最終的に、どちらを選択するかは、各開発者の具体的なニーズとコーディング スタイルによって決まります。

以上が追跡するか追跡しないか: C 11 の追跡戻り型を新しいデフォルトにする必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。