c++:举一个函数形参不能是引用的例子
巴扎黑
巴扎黑 2017-04-17 12:04:31
0
3
741

这是一道习题

巴扎黑
巴扎黑

全部回覆(3)
左手右手慢动作

還真不容易找到這樣的例子。

不過,在肯定會修改實參內容,而這種修改又不能影響原變數的情況下,比較適合不用引用吧。

例如:

bool read_file_in(string path, const string &file, string &out)
{
    path += "/" + file;
    
    return read_file(path, out);
}

bool write_file_in(string path, const string &file, const string &in)
{
    path += "/" + file;
    
    return write_file(path, in);
}

//...

string path, data;

//...
read_file_in(path, "in.txt", data);
write_file_in(path, "out.txt", data);

在上面的範例中,第一個參數 path 是不是不用再引用比較好?

洪涛

hibernake說的是對的,我的例子不合適

迷茫

當使用非常量引用,而實參是字面值、表達式、需要轉換的不同類型的物件時。如
void swap(int &a,int &b);
int a=2;
double b=3.0;
f(a,5);
f(a+2,a );
f(a,b);
都不行。也不能用const int&,因為要交換a與b的值。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!