I'm being curious about if it is possible to override an implemented function.   
I mean, is there any legal syntax of function declaration / implementation that allows alternative implementation?  

Why am I asking? (I know it sounds ridiculus)  

First, just of curiosity and expanding my knowledge.  

Second, I've learned that the global `new` can be overrided (Although it is strongly not recommended).  

Third, assume that I have written a library: `AwsomeLibrary.hpp`, which
my friend wants to include.  
Among a lot of functions, there is a function like `void sort(int* arr)`, which he thinks that he could implement better (and of course call it with the same name).