немогу разобраться как его использовать
в h-файле формы объявляю функцию сравнения
private: // User declarations
int __fastcall CompareFunc(void * Item1, void * Item2);
в срр-файле реализация
int __fastcall TForm1::CompareFunc (void *Item1, void *Item2)
{
if ( ( ((TPart *)Item1)->GetDate()) <
(((TPart *)Item2)->GetDate()))
return 1;
else if ( ( ((TPart *)Item1)->GetDate()) >
(((TPart *)Item2)->GetDate()) ) return -1;
else return 0;
}
потом в обработчике кнопки вызываю функцию в цикле
for (int i =ChanelA->Count-1; i<1; i--)
{
ChanelA->Sort(&CompareFunc(ChanelA->Items[i], ChanelA->Items[i-1]));
}
при компиляции выдает ошибку:
[C++ Error] Unit1.cpp(75): E2027 Must take address of a memory location
пробовал создавать ссылку на функцию непомогает
сыпит ошибки компиляции:
[C++ Error] Unit1.cpp(74): E2235 Member function must be called or its address taken
[C++ Error] Unit1.cpp(75): E2034 Cannot convert 'int' to 'int (_fastcall *)(void *,void *)'
[C++ Error] Unit1.cpp(75): E2342 Type mismatch in parameter 'Compare' (wanted 'int (_fastcall *)(void *,void *)', got 'int')
немогу врубиться в чем трабла