gpt4 book ai didi

c++ - 添加 const 正确性

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

我有一些代码是在不考虑 const 正确性的情况下编写的。有什么情况可以改变这个

class X
{
public:
X(X& rhs); // does not modify rhs
...
};

到这里

class X
{
public:
X(const X& rhs);
...
};

会改变现有程序的行为吗?我知道此更改将允许当前未编译的代码进行编译,但我很感兴趣是否存在已经编译的代码会改变其行为的任何情况。

类似的问题,改为进行此更改有什么好处吗?

class X
{
public:
X(X& rhs); // does not modify rhs
X(const X& rhs);
...
};

最佳答案

对于复制构造函数,我不这么认为。但请注意,一般来说,是的,const 的声明会影响调用哪个方法。唯一想到的例子是数组重载 - 参见例如this question .

关于c++ - 添加 const 正确性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16147321/

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