噜噜哒
#include<iostream>#include<string> std::string exchange(std::string x, std::string y){ return y + x;}template<class T>void _swap(T& a, T& b){ T c; c = a; a = b; b = c;}int main(){ std::string a = "world"; std::string b = "hello"; std::cout<< a << " "<< b<<std::endl; _swap<std::string>(a,b); std::cout<< a << " "<< b<<std::endl;}程序输出==================world hellohello world==================你的函数出错了,主要检查三个地方是否引入了相关的头文件 比如 #include<string>是否用using 引入了命名空间或者在使用的地方使用了命名空间,比如using std::string 或using namespace std 来引入命名空间,或者在代码中使用 std::string你是函数是否有正确的返回值,或者函数内部有错误。如果仅仅是声名,那么不要用花括号。