well, there are skills that are easy to learn, so they have huge competition and low salaries. there are skills that are hard to learn that results in good salaries. obviously, thing that are easy to learn can’t make you good profits. if you want to became well-paid C++ programmer, you have no choice but going hard way.
in this case, your call is absolutely polite, so the problem is in objects being sorted. my guess is that each data moving involves memory allocation, but i don’t want to research it for you. why the hell?? try to find someone else if your prefer to improve your social rather than technical skills :)