Возник следующий вопрос. Есть некий класс. При создании нового объекта этого класса конструктор принимает ряд параметров, в том числе и функцию. Могу ли я присвоить передаваемую функцию другой функции в этом объекте?
typedef void (*funct)();
class TestClass
{
public:
TestClass(funct);
private:
void ownFunct();
};
TestClass::TestClass(funct) { ownFunct = funct }; //правильно ли такое присвоение?
void Funct1() { ... }
void Funct2() { ... }
void Funct3() { ... }
int main()
{
TestClass TestObj1(Funct1);
TestClass TestObj2(Funct2);
TestClass TestObj3(Funct3);
return 0;
}