はじめまして、c++を始めて一年くらいの初心者です。
プログラミングをしている中で、自分のクラスが持ってるメンバ変数の数を取得したいのですが方法が分からず...
もしわかる方がいれば御教授いただきたいと思っております。
例えば
というクラスの場合、メンバ変数の数である2を取得する方法を知りたいです。
また今後メンバ変数が増えた場合はほぼメンテナンスなしで、3とか4とかの値が取得できるようにしていきたいです。
以上です。よろしくお願いいたします。
c++のメンバ変数の数を取得する方法について
- tk-xleader
- 記事: 158
- 登録日時: 13年前
- 連絡を取る:
Re: c++のメンバ変数の数を取得する方法について
C++にはリフレクションがありませんから、一般的にはクラスのメンバ変数の数を取得する方法はありません。
クラスのメンバ変数の数を取得出来るようにするには、メンバをstd::tuple型にするとか、std::arrayにするとかといった方法はあります。あるいは、外部ライブラリに頼ってもいいのであれば、boost.fusionやboost.hanaを使うとかいう方法もあります。
クラスのメンバ変数の数を取得出来るようにするには、メンバをstd::tuple型にするとか、std::arrayにするとかといった方法はあります。あるいは、外部ライブラリに頼ってもいいのであれば、boost.fusionやboost.hanaを使うとかいう方法もあります。