// 2.显示的指定类型 mySwap<int>(a,b); // <>参数列表,用参数列表告诉编译器,我只传int类型 // mySwap<double>(a,b); 报错 // 注意指定了类型,传入时不能不一致,引用不会进行隐式转换 mySwap<>(a,b); // mySwap2<>(); // 报错 调用时必须让编译器知道泛型T具体是什么类型