I expanded a little your answer to work with internal class methods. In the language of UE4 C++ :
typedef void(AOptics::*MyFunT)(float dt);
TArray<MyFunT> CurrentTickCalls;
MyFunT Fun = &AOptics::TestFun;
(*this.*Fun)(0.1);
CurrentTickCalls.Add(Fun);
(this->*CurrentTickCalls[0])(0.1);
For some method void AOptics::TestFun(float dt)
. I’m not sure how to involve the TFunction type here, and probably I won’t use this solution since I rather need some functions run dependent of multiple flag values instead of simple call.