okeydokey, time for another of my weird hypothetical example spawned questions. If i have a pile of functions, func1, someotherfunc, ... morefuncsthanicancount. that all do different things. and i got my luser...erm... user who enters the name of a function, how do i go about calling what they enter. if they type in func42 i want it to call func42. now my thought on how to do this was a vector of pair<string,function*> so i could search the vector for the right string, and execute the function pointer by address rather than name. now for some problems. how do i pass parameters to these? if they enter func32 X Y how can i pass the X and Y being that i dont know the prototype of functions i will be calling. again my bad idea was to have every function take a void pointer and type cast it over to whatever struct of parameters that particular function wanted. Before i waste the next 90 hours of my life trying to code this thing, i want to know what i have stated that clearly wont work, or is terribly flawed, or will make me just scrap the whole project, and how to get the address of a function to store to a vector. thanks for feeding my imagination.