void function f(iterator i){ ...}f(some_std_vector.begin());f(some_std_list.begin());
Where some_vector and some_list will always be containers storing the same type. I don't anticipate the need for associative container (std::map) compatibility.
Pretty vague, but hopefully you guys get the idea. The obvious solution is to use templates, and I would, but doing so would require me to modify someone elses code, and that could quickly become a much bigger pain in the butt.
Any ideas?