#include <iostream> #include <stdlib.h> using namespace std; template <typename T1,typename T2> void f(T1 &a,T2 &b) { cout<<"I'm template func"<<endl; } void f(int a ,char b) { cout<<"I'm normal func"<<endl; } int main() { int a = 222; char b = 'bbb'; f(a,b); f(b,a); f(a,a); f(b,b); system("pause"); return 0; }
输出: I'm normal func
I'm tmeplate func
I'm tmeplate func
I'm tmeplate func
求大神解答一下,c++编译器在调用函数的时候,是怎么区分普通函数的类型转换以及模版函数的类型匹配呢?一般项目开发中有这样的重载吗?如果有的话,怎么样让c++编译器来满足程序员的调用意愿呢?
米拉小胖子
相关分类