好的,所以程序和工作绝对正确
#include <iostream>
using namespace std;
template <typename T>
void Swap(T &a , T &b);
int main(){
int i = 10;
int j = 20;
cout<<"i, j = " << i <<" , " <<j<<endl;
Swap(i,j);
cout<<"i, j = " << i <<" , " <<j<<endl;
}
template <typename T>
void Swap(T &a , T &b){
T temp;
temp = a ;
a = b;
b= temp;
}
但是当我将函数的名称从Swap更改为swap 时,它会生成一个错误消息
错误:重载 'swap(int&, int&)' 的调用不明确| 注意:候选人是: void swap(T&, T&) [with T = int]| ||=== 构建完成:1 个错误,0 个警告 ===|
发生了什么是规则使用模板以大写字母开头的函数?