If you have something like this:
Code:
template <typename T>
void foo(T t)
{
cout<<"first"<<endl;
}
And call it like this
Code:
foo<double>(12.56);
foo(12.56);
Then you basically have something like this:
Code:
foo<double>(12.56);
00417F1E fld qword ptr [__real@40291eb851eb851f (4460D0h)]
00417F24 sub esp,8
00417F27 fstp qword ptr [esp]
00417F2A call foo<double> (416F82h)
00417F2F add esp,8
foo(12.56);
00417F32 fld qword ptr [__real@40291eb851eb851f (4460D0h)]
00417F38 sub esp,8
00417F3B fstp qword ptr [esp]
00417F3E call foo<double> (416F82h)
00417F43 add esp,8
So these calls are same.