gpt4 book ai didi

c++ - 如果参数与数据成员同名怎么办?

转载 作者:行者123 更新时间:2023-12-04 16:59:05 29 4
gpt4 key购买 nike

#include <iostream>

struct A
{
A(int n) { std::cout << n; }
int n{2};
};

int main()
{
A a{1};
}

输出为 1而不是 2 .

如果参数名称与数据成员的名称相同,C++ 标准是否定义首选参数名称?

最佳答案

参数在比成员变量“更近”的范围内,因此参数隐藏了成员变量。

显而易见的解决方案是重命名参数(或成员变量),使它们不再相同。

您也可以使用 this->n显式使用成员变量。

关于c++ - 如果参数与数据成员同名怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59746542/

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