首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Xcode4.3.1中使用libc++时,如何获得合理的变量显示?

在Xcode4.3.1中使用libc++时,如何获得合理的变量显示?
EN

Stack Overflow用户
提问于 2012-04-19 01:13:27
回答 2查看 1.5K关注 0票数 5

我使用Xcode4.3.1的C++11语言方言和libc++作为标准库。这种组合中的语言支持令人惊叹,但调试却是一种折磨。Xcode的“摘要格式”和lldb的摘要格式特性都不显示任何标准类型(std::string、std::vector等)。有漂亮的印刷品。由于它们的复杂性,为这些类型编写一个漂亮的打印机是非常重要的。(例如,std::string在libc++中非常复杂。)

在这种情况下,其他开发人员是如何为STL类型获得像样的可变显示的呢?或者还没有其他人将libc++与Xcode/lldb一起使用?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-29 22:34:06

此功能在Xcode 4.4中可以正常工作。对于Xcode 4.3用户来说,最好的解决方案就是简单地更新Xcode。

票数 0
EN

Stack Overflow用户

发布于 2012-07-27 19:51:51

W在lldb存储库中有支持。这是我所做的:

代码语言:javascript
复制
svn co http://llvm.org/svn/llvm-project/lldb/trunk lldb

(我得到了160855版)在Xcode的lldb shell中,你可以这样做:

代码语言:javascript
复制
command script import  /Users/arne/oss/lldb/examples/synthetic/libcxx.py

之后,lldb将std::vector、std::map、std::string和std::map更好地格式化:

代码语言:javascript
复制
(lldb) p rv
(std::__1::vector<unsigned long, std::__1::allocator<unsigned long> >) $3 = size=2 {
  (unsigned long) [0] = 503
  (unsigned long) [1] = 503
}

我已经用Xcode4.4测试过了。应该与Xcode 4.3的工作方式类似

您可以将该命令放在.lldbinit初始化文件中。然后,即使是Xcode也会很好地显示结构。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10214477

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档