在 c++ 中与引用参数一起使用时,我正在努力理解 const。
我编写了一个将常量引用字符串作为参数的函数。我传递了一个字符串(名称(并在调用函数时更改了它。
std::string name = "John";
void setName(const std::string& myName){
name = myName;
}
int main(){
setName("Jack");
std::cout << name << std::endl;
}
我以为我会得到一个错误,因为我正在尝试更改"name"参数女巫假设是常量,因为我将其传递给函数参数,但它运行没有错误并打印"Jack"。那么什么是常量引用参数,它的用途是什么?我认为它用于防止在传递给 const 引用参数时更改原始变量。
您不会尝试重新分配给myName
。您正在重新分配给全局name
。如果要防止更改name
则应将其声明为const std::string name = "John"
const
参数将防止重新分配给myName
例如:myName = "Jeremy"