У меня есть указатель функции, объявленный в моем заголовке, например:
typedef void (intCB)(int );
, и у меня есть член класса, объявленный так:
private:
intCB m_intCB;
В списке инициализации моего конструктора яхочу инициализировать его с 0:
MyClass::MyClass : m_intCB(0)
{
#ifdef SOMETHING
m_intCB = &someOtherFunc;
#endif
}
Только если определено определенное место, я хочу установить для него m_intCB, если нет, я хочу оставить его равным 0. Проблема с приведенным выше кодом состоит в том, чточто я получаю:
error C2436: 'm_intCB' : member function or nested class in constructor initializer list
Как я могу это исправить?