首頁 >後端開發 >C++ >如何在 C 11 中建立 Constexpr 從零開始的陣列?

如何在 C 11 中建立 Constexpr 從零開始的陣列?

Linda Hamilton
Linda Hamilton原創
2024-12-02 17:22:14851瀏覽

How to Create a Constexpr Zero-Based Array in C  11?

C 11 中的Constexpr 陣列產生

問題:

答案:

在 C 14 中,由於引入了 constexpr 構造函數和循環,此任務變得簡單。然而,在 C 11 中,我們需要採用更複雜的方法。

實作:

  1. 第1 步:使用類別帶有Constexpr 建構子的範本

    我們定義一個類別模板​​A 將數組大小N 作為模板參數。它包含一個 constexpr 建構函數,用於初始化大小為 N 的陣列 arr。

  2. 第2 步:填充數組

    在constexpr 構造函數中,我們迭代至N,為arr 的每個元素分配其對應的索引。這允許我們用 0 到 n-1 的序列填充數組。

  3. 第 3 步:用法

    我們可以實例化 A 類別用於取得 constexpr 陣列實例的範本。透過存取其 arr 成員,我們可以與其元素進行互動。

  4. 以下是在C 11 中演示此方法的範例程式碼:

此程式碼將輸出預期為0 到3 的序列,示範了在C 11 中成功建立constexpr 從零開始的陣列。

以上是如何在 C 11 中建立 Constexpr 從零開始的陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn