gpt4 book ai didi

c++ - 分配给函数返回的值(右值?)不会产生编译错误

转载 作者:行者123 更新时间:2023-11-30 03:23:22 25 4
gpt4 key购买 nike

<分区>

在下面的代码中,为什么对 get_string_val() 的赋值没有给出编译错误?看起来该函数正在返回一个右值。

当然,这是一个简单的例子,可以是一个返回成员变量的成员函数。如果我打算返回 std::string& 但输入错误并返回了 std::string,这可能会导致严重错误。

看起来“xxx”被分配给了由 get_string_val() 返回的临时变量?

std::string get_string_val()
{
std::string x;
return x;
}

int main()
{

get_string_val() = "xxx";
}

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com