두 가지 방법이 있다. std::function을 사용하거나, 템플릿을 사용한다. https://blog.koriel.kr/modern-cpp-lambdayi-teugjinggwa-sayongbeob/ std::function을 쓸 때는 const &로 전달 가능하다. https://stackoverflow.com/questions/8711391/should-i-copy-an-stdfunction-or-can-i-always-take-a-reference-to-it
template <class PREDICATE_CLASS>
void Sort(const PREDICATE_CLASS& Predicate)
{
::Sort(GetData(), Num(), Predicate);
}