返回一个引用的时候,函数也应该定义为引用的形式:
const string &reStr(const string &str)
{
return str;
}
这样的话返回的str没有复制操作,直接返回str这个引用。而如果是:
const string reStr(const string &str)
{
return str;
}
这样虽然传进来的是引用,但是返回的时候还是自己复制给了自己一次
从VC的反汇编来看,第一种方法是简洁了很多的
返回一个引用的时候,函数也应该定义为引用的形式:
const string &reStr(const string &str)
{
return str;
}
这样的话返回的str没有复制操作,直接返回str这个引用。而如果是:
const string reStr(const string &str)
{
return str;
}
这样虽然传进来的是引用,但是返回的时候还是自己复制给了自己一次
从VC的反汇编来看,第一种方法是简洁了很多的