recherche

Maison  >  Questions et réponses  >  le corps du texte

windows - visual C++ 中怎么查看容器中的内容


std::vector<Cstring> m_str;
std::map<int,CString> m_mapType;    
std::map<int,std::vector<FileInfo>* > m_mapWa;    

这样的变量初始化之后, 我怎么调试查看到每个元素的具体内容。有什么方式吗?
有具体的步骤,或是可以附上链接。

IDE 是VC6, 一些复杂的STL 调试的时候显示原始结构。都不知道怎么看,我在想有没有简单的办法可以查看,不然程序运行的时候就要用 printf 的方式了,有些麻烦。
变量是单列类中的复杂数据。 有好的方法吗? 如果用VS2013的话倒是很方便,支持复杂类型的查看。

PHP中文网PHP中文网2804 Il y a quelques jours586

répondre à tous(4)je répondrai

  • 伊谢尔伦

    伊谢尔伦2017-04-17 15:18:06

    VC6啊...说个题外的,新的VS都可以自己写natvis文件描述IDE如何展示对象

    répondre
    0
  • 高洛峰

    高洛峰2017-04-17 15:18:06

    使用一个迭代器,如要访问m_mapType中的内容:
    std::map<int,CString>::iterator it=m_mapType.begin();
    while(it!=m_mapType.end()){

    cout<<(*it).first<<":"<<(*it).second<<endl;
    //map里面使用关键字与值组成的,组成一个pair对象,first与second分别是pair的关键字与值

    }

    répondre
    0
  • PHPz

    PHPz2017-04-17 15:18:06

    调试的时候跟踪或者暂停执行的时候,直接指向那个变量就可以的。那个提示条可以展开,一层层的。

    répondre
    0
  • 黄舟

    黄舟2017-04-17 15:18:06

    看你的代码可能你还在使用老的VC6之类的编辑器
    这类老的编译器对于一些复杂的stl容器支持不好,比如map
    如果你知道key,可以在watch里面使用map[key]来一个一个查看map的值
    VS之后,IDE都是可以看到这些复杂数据结构的值了、

    répondre
    0
  • Annulerrépondre