gpt4 book ai didi

c++ - 返回一个 const 变量 - 它会导致问题吗?

转载 作者:行者123 更新时间:2023-11-30 00:43:42 30 4
gpt4 key购买 nike

我是 C++ 的新手,还没有找到答案,因为搜索结果总是关于函数签名而不是这个。

基本上,如果我有一个函数:

std::string MyFunction(const int test) const
{
const std::string str1 = "Hello";
const std::string str2 = "World";
return test > 7 ? str1 : str2;
}

返回值要么是str1,要么是str2,它们都是const。这会给调用者带来问题吗?

最佳答案

The return value is either str1 or str2, which are both const. Can this cause problems for the caller?

不,不会。返回的对象是其中一个的拷贝。

顺便说一句,在大多数用例中,在参数类型中使用 const 是没有意义的。是否修改函数中参数的值不会影响调用函数。除非您有充分的理由证明使用 const 是合理的,否则我建议使用不带 const 的更简单的形式。

std::string MyFunction(int test) const { ... }

关于c++ - 返回一个 const 变量 - 它会导致问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52748398/

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