1. ホーム
  2. c++

[解決済み】C++アプリケーションにリフレクションを追加するにはどうすればいいですか?

2022-03-29 10:35:48

質問

C++のクラスの名前、内容(つまりメンバとその型)などをイントロスペクトできるようにしたいのですが。ここでは、リフレクションがあるマネージドC++ではなく、ネイティブC++について話しています。C++は、RTTIを使用して、限られた情報を提供していることは知っています。どのような追加ライブラリ(または他の技術)がこの情報を提供することができますか?

どのように解決するのですか?

ポンデリング は、この問いに対する答えとして、C++のリフレクションライブラリです。私は選択肢を検討し、私のボックスをすべて満たすものを見つけることができなかったので、自分で作ることにしました。

この質問に対する素晴らしい答えがありますが、私は大量のマクロを使いたくありませんし、Boostに頼りたくないのです。Boostは素晴らしいライブラリですが、よりシンプルでコンパイル時間の短い、小さな特注のC++0xプロジェクトがたくさんあります。また、C++11をサポートしていない(まだ?)C++ライブラリをラップするように、クラスを外部で装飾できる利点もあります。 C++11を使用するCAMPのフォークで、次のようなものがあります。 はもはやBoostを必要としない .