
C++里string如何定义函数?
我这样定义:stringexchange(stringx,stringy){}为什么是错的额?...
我这样定义:
string exchange(string x,string y){
}
为什么是错的额? 展开
string exchange(string x,string y){
}
为什么是错的额? 展开
2个回答
展开全部
C++中string类声明函数返回值类型与其他类型相同。如
string methodName(string a, string b)
//methodName为函数名,a,b为参数列表,开头的string为返回值类型。
{
string comeString = "";
//...
return someString;
}
注意事项:
使用string类需要包含头文件#include <string>,他包含在std命名空间中,使用该类型有三种方式
(1)使用std命名空间,即using namespace std;
(2)不使用std命名空间,直接使用using 关键字包含,using std::string;
(3)前两者使用string类时直接使用string,但如果不使用前两者的话,需要在使用时在string前加std::,即std::string来进行变量或函数的声明。
展开全部
#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 hello
hello world
==================
你的函数出错了,主要检查三个地方
是否引入了相关的头文件 比如 #include<string>
是否用using 引入了命名空间或者在使用的地方使用了命名空间,比如using std::string 或using namespace std 来引入命名空间,或者在代码中使用 std::string
你是函数是否有正确的返回值,或者函数内部有错误。如果仅仅是声名,那么不要用花括号。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询