Actually overloaded functions are stored at different positions in memory.
They get a decorated name (just google for 'overloading +"decorated names"') and then they are individually callable by their pointer. That's just what the compiler does. It replaces func(int x) with the pointer to code memory space x and func(var x) with the pointer to code memory space y and gives the parameters to these functions.

The actual thing I want to achieve is having imported functions from a dll( as one has to export DLL functions for Lite-C as C type and not C++ the DLL itself won't support overloaded functions). Though I thought if I'm able to get the pointer to an overloaded Lite-C function I can assign dllfunc1 to the one and dllfunc2 to the other overloaded function by getting the pointer to the functionpointer. And getting that would only be a "&" far away if I had the appropriate functionpointer.

In C++ it would be as simple as the following.
Code:
int myfunction(int x)
{  whatever... }

int myfunction(double x)
{  whatever ... }

void* myFunctionPointer;
int (*myFunctionPointer)(int) = myfunction;  //after this line myFunctionPointer is pointing to the first myfunction.
int (*myFunctionPointer)(double) = myfunction; // after that one it is pointing to the second.

greetings
K-Duke

Last edited by KDuke; 04/02/09 20:10.

Using A7 Free
Click and join the 3dgs irc community!
Room: #3dgs