ホームページ > バックエンド開発 > C++ > C で静的な `std::map` を初期化する方法

C で静的な `std::map` を初期化する方法

DDD
リリース: 2024-12-09 13:04:10
オリジナル
189 人が閲覧しました

How to Initialize a Static `std::map` in C  ?

C での静的マップの初期化

C で、静的な std::map を初期化します。ユニークな挑戦を提示します。初期化子リストや静的関数を使用するような簡単な方法はありません。ただし、代替ソリューションを提供するアプローチがいくつかあります。

C 11 Initializer List の使用

C 11 では、マップの初期化に利用できる初期化リスト構文が導入されています。中括弧内の要素は中括弧のペアで囲まれており、各ペアはキーと値のペアを表します。マップはキーに基づいて要素を自動的に並べ替えるので、初期化の順序は関係ありません。

#include <map>

using namespace std;

static map<int, int> m = {{1, 2}, {3, 4}, {5, 6}};
ログイン後にコピー

Boost.Assign の使用

Boost.Assign は次のライブラリです。マップやその他のデータ構造を初期化するための便利なマクロを提供します。マップ内でキーと値のペアを指定するための簡潔な構文を提供します。

#include <boost/assign.hpp>

using namespace std;
using namespace boost::assign;

static map<int, int> m = map_list_of(1, 2)(3, 4)(5, 6);
ログイン後にコピー

以上がC で静的な `std::map` を初期化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート