C++作成jsonジェネレータ

1975 ワード

このプロジェクトでは、jsonと一般的なjsonライブラリを紹介し、C++でjsonジェネレータを作成し、jsonデータを生成し、テスト例の作成を学習します.
jsonの概要:
jsonはjavaScriptのオブジェクト表現で、jsonはサーバとクライアントの前にデータを転送するために使用されます.
jsonの主な構造:
  • 名前/値ペアのセット.様々な言語では、オブジェクト、レコード、構造、辞書、ハッシュテーブル、キーリスト、または関連配列として実装されます.
  • ソートされた値のリスト.ほとんどの言語では、配列、ベクトル、リスト、またはシーケンスとして実装されます.

  • オブジェクト:無秩序な名前/値ペアのセットです.1つのオブジェクトは、「{」と「}」で始まります.各名前の後:名前/値のペアとは別です:
    ここに画像の説明を入力します
    ≪配列|Array|ldap≫:配列値の順序付き集合.配列の先頭は'['と']'で終わり、値は','で区切られます.
    ここに画像の説明を入力します
    値:二重引用符の値は、文字列、数値、またはブール型、またはオブジェクトまたは配列です.これらの構造はネストできます.
    ここに画像の説明を入力します
    文字列:文字列はUnicode文字のゼロまたは複数のシーケンスで、二重引用符では逆斜線変換を使用します.文字は文字列として表示されます.
    ここに画像の説明を入力します
    数値:数値はc言語とjava言語の数値タイプに似ていますが、8進数と16進数ではありません.
    ここに画像の説明を入力します
    一般的なc++jsonライブラリ:
    jsonの公式サイトでは多くのjsonライブラリが見られますが、私たちがよく知っているのはrapidjson、jsoncpp、json++です.
    rapidjson:
  • クロスプラットフォーム
  • コンパイラ:Visual Studio、gcc、clangなど
  • アーキテクチャ:x 86、x 64、ARM等
  • オペレーティングシステム:Windows、Mac OS X、Linux、iOS、Androidなど
  • インストールしやすい
  • はヘッダファイルのライブラリのみです.あなたのプロジェクトにファイルをコピーするだけです.

  • 独立、最小依存
  • は、STL、BOOSTなどに依存する必要はありません.
  • は、,,,のみを含む.

  • C++異常なし、RTTI
  • 高性能
  • は、モジュールおよびインライン関数を使用して、関数呼び出しのオーバーヘッドを低減する.
  • 内部で最適化されたGrisu 2および浮動小数点数解析が実現される.
  • オプションのSSE 2/SSE 4.2サポートされています.


  • ​jsoncpp:
  • 読み書きJSON文書
  • 解析の間、C++スタイルの注釈は要素
  • に付加される.
  • 書き換えJSON文書保存元文書
  • JSON++:
  • JSON解析器はC++11に基づく.
  • JSON形式の文字列とファイルを解析し、JSON構造を表すメモリツリーを生成します.
  • JSONオブジェクトは、標準ハッシュテーブル、配列、ベクトルにマッピングされます.
  • JSONタイプはc++タイプにマッピングされます.
  • 標準クラスライブラリを使用し、追加の関数ライブラリ
  • を追加する必要はありません.
    jsonジェネレータの作成
    開発手順:
  • json-write.hを記述する.
  • 汎型と重荷;
  • コア関数の設計;
  • コア関数を記述する.
  • 試験例を作成する.

  • 以上、jsonジェネレータを開発する開発手順です.詳細なドキュメントの紹介とコードの詳細については、「C++jsonジェネレータの作成」をクリックすると、すぐに確認できます.