Ну, це досить відкрите питання, але Ерік Ліппер написав (а два насправді) досить довгі серії про саме цю тему . Не зовсім правильна мова, але вона повинна бути досить корисною і дати загальну ідею.
Хоча реалізація CPS в C ++ здається схоже на велику роботу, щоб просто виправити єдину рекурсивну функцію, коли ви можете просто використовувати який-небудь алгоритм, щоб зробити функцію ітеративною з чергою (ви як і раніше використовуєте в основному таку ж кількість даних, але купа далека менш обмежений)