it was an interview question ...even i was not sure i just told them templates are better because it is new addtion to C++ ...i went through the link most of them say templates cannot take varying no of arg but tamplates can take varying no of agr
ex:
template <class type1, class type2>
type1 exp(type1 a, type2 b) {
return (b <= 0) ? 1 : a * exp(a, b - 1);
}