gpt4 book ai didi

c++ - 阴影参数

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:00:32 25 4
gpt4 key购买 nike

为什么第二个构造函数隐藏第一个?

class RC2{
private;
bool keyset;
public:
RC2(uint32_t t1 = 64){
keyset = false;
}

RC2(const std::string KEY, uint32_t t1 = 64){
RC2(t1);
//setkey(KEY);
}
};

给我:错误:“RC2 t1”的声明隐藏了一个参数

我认为编译器无法区分这些

我在 C++0x 中使用代码块 gcc

最佳答案

因为 RC2(t1); 是局部变量声明隐藏参数 t1,而不是对其他构造函数的调用。以下代码也是有效的:

int main(int argc,char* args[])
{
int(a);
a = 2;
return a;
}

注意!在 C++11 之前,无法从 C++ 中的构造函数调用同一类上的另一个构造函数。如果您使用的是旧的 C++ 版本,请创建一个 Init() 方法,两个构造函数都会调用该方法。

关于c++ - 阴影参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6308457/

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