Код
typedef void (*FunctionPtr) (void);
FunctionPtr FPtr;
struct TStructure {
void Function(void);
};
void TStructure::Function(void)
{}
void Function(void)
{}
struct TStructure TestStructure;
Если присвоить FPtr адрес Function то компилируется без ошибок:
Код
FPtr=&Function;
FPtr();
FPtr();
а такой вариант вызывает ошибку:
Код
FPtr=&TestStructure.Function;
FPtr();
FPtr();
Разве такое присвоение невозможна в C++?
Или это ограничение IAR-а?