【发布时间】:2015-07-03 08:21:50
【问题描述】:
我正在尝试用其他对象构建一个对象并传递函数
抱歉描述不清楚 问题是如果 TESTobj 是其他对象,我构建新对象(Gradebook)并使用 TESTobj 传递函数,传递没有对象的函数没问题但是在对象里面会报错
error: no matching function for call to ‘TESTobj::SET(void (GradeBook::*)())’
no known conversion for argument 1 from ‘void (GradeBook::*)()’ to ‘void (*)()’
这里是示例:
void TESTobj::SET(void (*nu)())
{//point the function
this->nu=nu;
}
void TESTobj::Test()
{//implement the function
(*nu)();
}
void GradeBook::Grade()
{//the function I build
cout << "HELLO" <<endl;
}
void GradeBook::Set()
{
OBJ.SET(&GradeBook::Grade);//GotProblemHere
OBJ.Test();
}
【问题讨论】:
-
你的问题到底是什么?