我使用的Xcode 4.3.1的C ++语言11与方言的libc ++的标准库一起。 这一组合中的语言支持是惊人的,但调试是折磨。 既不Xcode的“摘要格式”也不LLDB的总结格式特征显示任何标准类型(的std :: string,性病::矢量等),漂亮的印刷。 写这些类型的一个漂亮的打印机是非常不平凡的,由于其复杂性。 (例如,的std :: string是libc中非常复杂++。)
世界如何其他开发商获得体面的变量显示为STL类型在这种情况呢? 或正在使用的libc ++和Xcode / LLDB又没有其他人?
w ^ ELL有在LLDB储存库支持。 这是我做的:
svn co http://llvm.org/svn/llvm-project/lldb/trunk lldb
(我得到了修订160855)在Xcode中的LLDB壳可以做比:
command script import /Users/arne/oss/lldb/examples/synthetic/libcxx.py
之后LLDB格式的std ::载体,性病::地图,的std :: string和std ::地图更漂亮:
(lldb) p rv
(std::__1::vector<unsigned long, std::__1::allocator<unsigned long> >) $3 = size=2 {
(unsigned long) [0] = 503
(unsigned long) [1] = 503
}
我已经和Xcode 4.4测试这一点。 应工作和Xcode 4.3相似
您可以在.lldbinit init文件把命令。 即使Xcode中会再次出现格式良好的结构。
此功能正常工作在Xcode 4.4。 为Xcode的4.3用户最好的解决办法是简单地更新Xcode的。