Steiner
V2EX  ›  问与答

c++ 调试时发现一个有意思的现象

  •  
  •   Steiner · Sep 10, 2019 · 2217 views
    This topic created in 2472 days ago, the information mentioned may be changed or developed.

    今天在调试 c++程序时发现一个有意思的现象,在 for 循环里单步调试时执行到下个循环时并不会跳到 for 循环的首部,而是到它下面的 string tmp2(curStr); ,然后再往上执行,到 for 循环首部后再向下执行。

    有人知道这是怎么回事吗?

    4 replies    2019-09-11 08:44:03 +08:00
    heijiaotuan
        1
    heijiaotuan  
       Sep 10, 2019   ❤️ 2
    调用了 string 的析构
    sadfQED2
        2
    sadfQED2  
       Sep 10, 2019 via Android
    你换个编辑器试试?
    sfqtsh
        3
    sfqtsh  
       Sep 10, 2019 via Android
    -O0
    wnpllrzodiac
        4
    wnpllrzodiac  
       Sep 11, 2019 via Android
    编译器优化了,release 版的代码就是上下乱跳的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1171 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 23:31 · PVG 07:31 · LAX 16:31 · JFK 19:31
    ♥ Do have faith in what you're doing.