在linux环境下的c++程序, 编译选项用了-g   但是当调试的时候却出了问题,代码如下:

for(...)  
  1. {  
  2.      string variable2;  
  3.      ....  
  4.   
  5. }  

gdb   ->   file   filename->   p   variable2
结果出现No   symbol   "variable2 "   in   current   context的错误。
但是运行结果不受影响。

原因为:

g++编译时局部变量被优化到寄存器里了,此时是无法在内存中查看变量的值的。

尝试过-O0,不起作用,目前还不知道怎么解决。

 

http://blog.csdn.net/bruce_wang_janet/article/details/6780014

 

 

相关文章:

  • 2022-12-23
  • 2021-09-27
  • 2021-07-22
  • 2021-12-04
  • 2022-12-23
  • 2022-01-25
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-07-17
  • 2022-12-23
  • 2022-12-23
  • 2021-09-03
  • 2022-01-27
  • 2022-12-23
相关资源
相似解决方案