If I try to debug my C++ program in QT Creator the Locals and Expressions window shows me the variables in the program. However all the values show "< not accessible >".
Screenshot:
How do I get the values to show? I can print the values out with cout so I know they are initialized.
Edit: It seems like it only applies to strings
Specs/other:
尝试删除Tools / Options / Debugger / GDB / Load系统GDB漂亮打印机上的复选标记,看看这是否有所不同。
Solved:
For composite types (std::string and other classes) it doesn't automatically convert to some default type (eg std::string to char*); so what you need to do it right-click on a value, then select the submenu Change local display format-> Raw structure, and then keep opening the symbol until you get something meaningful (when possible). Eg for std::string, after you change to “Raw structure”, you get your actual string (by clicking the “+” sign to the left of your symbol) in: _M_dataplus->_M_p
Note that you can “Change local display format” for one symbol (the one you selected) or for all symbols of that type (eg you select a std::string, then all std::strings change to Raw structure)
From this link: http://qt-project.org/forums/viewthread/36121/
Credit goes to Gyll.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.