调用规则:
- 如果函数模板和普通函数都可以实现需要的功能,那么优先调用普通函数。
 - 可以通过空模板参数列表来强制调用函数模板。
 - 函数模板也可以发生重载。
 - 如果函数模板可以产生更好的匹配,那么会优先调用函数模板。
 
示例:
#include <iostream>using namespace std;int myAdd(int a,int b){cout << "普通函数的调用" << endl;return a + b;}template<typename T>T myAdd(T a,T b){cout << "模板函数的调用" << endl;return a + b;}template<typename T>T myAdd(T a,T b,T c){cout << "模板函数的调用"<< endl;return a + b + c;}int main(){int a = 10;int b = 20;int c = 30;string str1 = "hello,";string str2 = "world";cout << myAdd(a,b) << endl;cout << myAdd<>(a,b) << endl;cout << myAdd(a,b,c) << endl;cout << myAdd(str1,str2) << endl;system("pause");return 0;}

