This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/66AK2H12:调试c++对象

Guru**** 2918290 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/659045/ccs-66ak2h12-debugging-c-objects

部件号:66AK2H12

工具/软件:Code Composer Studio

尝试调试支撑臂上的对象正使我感到合适。

使用:CCS 7.3 , GNU v.3,4.9 Tools XDCtools 3.32 .2.25

我在不久前发布了类似的文章。 参考: https://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/62.9959万

尝试在表达式窗口中查看对象时得到不同的结果。 对于某些对象,“类型”显示正确,但值将显示“???” 地址后面的标记和在使用时,值列显示"宏中的成员名称无效"。 这是什么意思?

其他对象显示为void *类型,当我尝试展开这些对象时,"值"列显示"无法从非原始位置加载"。

这会显著影响我的调试能力。 我不明白导致上述两件事发生的条件是什么。 代码的工作方式与我所能知道的一样。

它似乎与具有虚拟成员的基类有关。 甚至是虚拟的析构函数。 如果删除所有虚拟功能,调试器似乎允许我查看对象。 我很喜欢不用虚拟化,但为了权衡调试的能力,我已经开始这样做了。   

是否有人能提供任何指导或建议? 是否需要配置某些内容才能正确调试? 我应该避免使用某些代码结构?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Mike:
    这似乎是CCS如何处理GCC的调试输出的一个错误。 我对您最初的线程反应不佳表示歉意。 我为此提交了一个错误,跟踪ID是CCBT-2202。 我将优先处理此问题,以便快速解决

    谢谢
    KI