【发布时间】:2021-09-04 03:20:09
【问题描述】:
我有一个模板基础类:我想将一个成员函数作为参数发送给另一个函数,我该怎么做?
template <class T>
class GenericButton
{
public:
GenericButton(const T& t) :m_t(T) {};
auto& getT() {
return m_t;
}
private:
T& m_t;
};
class Check
{
private:
bool m_generic;
void changeType()
{
m_generic = !m_generic;
};
GenericButton<decltype(changeType)> m_button = GenericButton<decltype(//changetype());
// maybe lambda
};
int main(){
auto check = Check();
auto function = check.m_button.getT();
function();
}
请问我怎样才能将函数作为模板成员发送? 请指教, 提前致谢
【问题讨论】:
标签: c++ function pointers templates lambda