出现问题:
在Linux下用CLion来调试C++程序,有些文件里面的变量无法查看(提示 optimized out),并且采用std::cout也无法在console里面打印出结果。。。十分诡异!
网上解决方法:
网上大部分做法是设置-O0,以及在代码里面去强制设置编译模式,但是我尝试各种方法后均无效!
最终解决方法:
通过新建简单工程一步步对比发现,只需要在CMakeLists.txt的add_executable中增加需要调试和打印的CPP文件即可!重新Debug代码后,所有的变量均可显示,std::cout也可以正常打印(简直跟windows的VS一模一样,太爽了!)。
另外注意需要 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g ")