C++ 如何访问C++;类模板?
我试图创建一个C++类模板,该模板利用指向成员参数的指针,但编译失败。如何从模板中访问指向成员参数的指针C++ 如何访问C++;类模板?,c++,templates,C++,Templates,我试图创建一个C++类模板,该模板利用指向成员参数的指针,但编译失败。如何从模板中访问指向成员参数的指针 class Base { public: int foo; int bar; }; template<int Base::* T> class Derived : public Base { public: int Get() { return *T; } <--- Does not work }; Derived<&Base::foo>
class Base {
public:
int foo;
int bar;
};
template<int Base::* T>
class Derived : public Base {
public:
int Get() { return *T; } <--- Does not work
};
Derived<&Base::foo> test;
printf("Value = %i\n", test.Get());
类基{
公众:
int foo;
int-bar;
};
模板
派生类:公共基{
公众:
int Get(){return*T;}Try
*
和->*
是用于取消对成员指针的引用的运算符
return this->*T;
(为什么T
?它不是一种类型。)谢谢!很抱歉,您比接受的答案晚了一百万次:)@Pol:如果您发现更新的答案更有用、更完整等,您可以随时更改接受的答案。
return this->*T;