你好,麻烦帮忙看一下关于这个语句string encode(string& str)!

这是完整的
string encode (string& str)
{
string result(str);
for(int i=0;i<str.lengh();i++)
{
reslut[i]+=key[i%7]-'0';
if(result[i]>'z')
result[i]-=91;
}
resturn result;
}
这是一个加密小程序
请问你,string result(str)在这啥意思,起什么作用?
感谢你的解疑

沧海一幻觉
浏览 267回答 3
3回答

茅侃侃

string result(str)这是一个拷贝函数的构造方法调用,一般的情况下可能会写成string result = str;但是这种写法不好,效率上来说不高,因为这个表达式做了2个操作,首先调用了构造函数,然后再调用了复制函数(c++规定,如果你没有自己写,c++编译器会给你产生一个默认的)。而上面则值是调用了一个拷贝构造函数(同上)

慕村9548890

定义一个字符串数组,用于返回运行结果。

江户川乱折腾

string&里的&表示引用,所以str引用一个string类型的变量。看上去这个函数可以把str做编码,然后将编码后的串返回。引用是C++里的一个基本概念
打开App,查看更多内容
随时随地看视频慕课网APP