в теле функции
virtual TRequestResult __fastcall MainFunction(){};
что то должно возращать значение хоть
virtual TRequestResult __fastcall MainFunction(){return 0};
или
virtual TRequestResult __fastcall MainFunction() = 0;
соотвественно для виртуального класса