在C 中使用非預設可構造型別時,初始化std::array 可能具有挑戰性,尤其是當數組大小由模板參數決定時。
為了解決這個問題,我們引入了一種利用序列類型和生成器概念的複雜方法:
我們使用模板元函數定義一個名為seq 的序列類型,它表示連續整數的序列。
使用這個序列,我們建構一個生成器genseq 來產生長度遞增的序列:
序列到位後,我們定義一個Repeat() 函數來建立使用相同值初始化的陣列:
要初始化非預設可建構類型的std: :array,我們只需使用所需的值和genseq_t
以上是如何使用模板元程式設計優雅地初始化非預設可構造 std::array?的詳細內容。更多資訊請關注PHP中文網其他相關文章!