4

メンバー変数をテンプレートに渡そうとしています。たとえば、次の場合:

struct MyStruct { MyType MyMember; }

どうすれば次のようなことができますか?

MyType MyVar = MyTemplate<MyStruct, &MyStruct::MyMember, MyType>();

私は周りを検索しようとしましたが、それを達成する方法を正確に説明するものは見つかりませんでした...それがばかげた質問である場合は申し訳ありませんが、私はc++にかなり慣れていません...

どんな助けでも大歓迎です!

4

1 に答える 1

7

ここに何かがあります:

template< typename Class, typename MemberType, MemberType Class::*Member >
struct my_template;

そして、あなたはそれをこのように使うことができます:

my_template< MyStruct, MyType, &MyStruct::MyMember > _;
于 2013-01-12T21:54:17.813 に答える