首頁 > 後端開發 > C++ > C 11 中的尾隨返回類型:它們應該成為新標準嗎?

C 11 中的尾隨返回類型:它們應該成為新標準嗎?

Patricia Arquette
發布: 2024-12-12 16:28:16
原創
278 人瀏覽過

Trailing Return Types in C  11: Should They Be the New Standard?

穿越困境:探索 C 11 中的尾隨返回類型語法

C 11引入了一種新穎的函數語法,允許開發人員指定參數列表後的返回類型:

auto func_name(int x, int y) -> int;
登入後複製

此語法脫離來自傳統聲明:

int func_name(int x, int y);
登入後複製

雖然這種新樣式的採用仍然有限,但它提出了一個問題:它是否應該成為新C 11 程式的預設樣式?

必要性尾隨回傳類型的優點和優勢

在某些情況下,尾隨回傳類型成為強制性的。這包括 lambda 函數和 decltype 實例,其中參數名稱是必不可少的。

此外,尾隨回傳類型提供好處:

  • 範圍避免:對於使用非-內聯定義,尾隨語法消除了重複類限定的需要兩次。
  • 對稱函數對齊:一致應用時,尾隨返回類型整齊地對齊函數名稱,提高可讀性。

混合樣式註意事項

混合了傳統回傳類型和尾隨回傳類型的程式碼庫帶來了美學問題。然而,值得注意的是,尾隨返回類型並不普遍適用:

  • 可見性和可發現性:傳統返回類型確保返回類型在標頭中立即可見,從而有助於發現。
  • 相容性問題:並非所有工具和函式庫都完全支援尾隨回傳類型,可能會引入相容性問題。

結論

是否採用尾隨回傳類型作為預設值的決定取決於因素的平衡。雖然它們在易讀性和便利性方面具有優勢,但它們可能並不普遍適用或得到充分支持。對於需要一致的函數對齊或成員 typedef 很突出的程式碼庫,尾隨回傳類型具有優勢。然而,在可見性、可發現性或相容性至關重要的情況下,傳統語法可能仍然更可取。

以上是C 11 中的尾隨返回類型:它們應該成為新標準嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板