首頁 > 後端開發 > C++ > 主體

Lambda 函數可以在 `constexpr` 表達式中使用嗎?

Patricia Arquette
發布: 2024-11-01 01:15:28
原創
455 人瀏覽過

Can Lambda Functions Be Used in `constexpr` Expressions?

Constexpr 對Lambda 函數的支援

原始問題:

原始問題:

回應:

在 C 14 中,constexpr 不支援 lambda 函數。然而,隨著 N4487 的採用,這種情況將會改變。該提案將允許常數表達式中的 lambda 和特定閉包類型操作。

說明:

在 C 14 標準的 [expr.const]/(2.6) 下, lambda 被排除在常數表達式之外。 N4487 中概述了此限制:

「此提案建議在常數表達式中允許**lambda 表達式**,從而刪除現有限制。作者建議某些**lambda 表達式** 和操作允許某些閉包物件出現在常數表達式中。其視為文字類型。

如果 lambda 宣告符中省略了 constexpr 說明符,則只要滿足 constexpr 函數的要求,產生的函數呼叫運算子就會變成 constexpr。此行為類似於隱式定義的建構函數和賦值運算子的 constexpr 推理。

    以上是Lambda 函數可以在 `constexpr` 表達式中使用嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

    來源:php.cn
    本網站聲明
    本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
    作者最新文章
    熱門教學
    更多>
    最新下載
    更多>
    網站特效
    網站源碼
    網站素材
    前端模板
    關於我們 免責聲明 Sitemap
    PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!