|
1
0
我发现这是通过思考,想知道在地球上一个成员如何可以得到意想不到的方式修改。在我读到@mjwills的评论之前,我找到了解决办法,但他肯定是在找准方向。 我遗漏了什么(当然!)我刚刚为类编写了一个ToString()方法。。。没有调试。我为什么不说呢?因为它显然不能影响任何东西,所以它不能成为问题的一部分。
但是,在调试时。。。。调试器可以(在本例中是这样)显示局部变量。为此,它显然会调用ToString()来获得一个好的可显示值。因此,单步执行的行为导致ToSTring()被调用,并且它的错误scratch变量赋值在每次步骤调用之后将插槽归零。 所以咬我的不是二传手。这可以说是一个令人振奋的消息。(需要时FORTRAN的PURE关键字在哪里?) 爱因斯坦讨厌远处的怪异行为。程序员讨厌远处的可怕副作用。 对于调试器调用一个类的ToString()的想法,有人会有点奇怪,因为这个类的构造函数还没有完成。如果构造函数没有完成,关于类状态的哪些断言可以转换为字符串信任?我认为MS调试器应该被修复。有了它,我就可以把时间花在调试ToString上,而不是追求这个。 谢谢你接受我的问题。它让我找到了答案。 |
|
KiraHoneybee · 具有构造函数参数的模板化类 4 年前 |
|
|
nick2225 · 隐式调用复制构造函数? 4 年前 |
|
|
nohaga · 为什么在本例中p3需要默认构造函数? 4 年前 |
|
|
Aadil Hoda · 为什么类类型的成员需要初始化? 4 年前 |
|
|
EloiGG · 具有任意类型的变量的可数的C++函数 4 年前 |