c++ - 遍历 std :list<wstring>

标签 c++ stdlist

这是我的代码:

for (std::list<std::wstring>::iterator itr  = kb->titles.begin(); itr != kb->titles.end() ; itr++)
    {
        _size += *itr.size();
    }

我想做的是访问列表中包含的每个 wstring 并调用它的 size() 成员函数。然而,itr 指向的似乎不是迭代的 wstring 元素,我收到错误(错误 C2039:“大小”:不是“std::_List_iterator<_Mylist>”的成员)

如果您想知道 kb 是什么,它是指向带有 std::list<std::wstring> titles; 的结构的指针作为它的成员之一。

关于如何解决这个问题有什么想法吗?

最佳答案

运算符优先级是这里的问题,试试

_size += (*itr).size();

甚至更好,

_size += itr->size();

关于c++ - 遍历 std :list<wstring>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10197309/

相关文章:

c++ - 无法使用 QMYSQL 部署 Qt 应用程序

c++ - 在 C++ 中拆分和合并 std::list

c++ - 声明具有相同名称但类型不同的变量

c++ - 为什么从 DLL 中调用类方法需要虚拟说明符?

c++ - 在 C++ 中覆盖 OpenGL 的纹理包装器

c++ - 将 vec4[idx[i]] * scalar[i] 与 YMM vector 寄存器相加

c++ - std::list 线程安全

c++ - 为什么我可以在列表中删除对象后访问其成员变量?

C++ std::list 排序保留顺序

c++ - 删除 std :list<User_Define> that satisfy certain conditions? 中元素的最佳方法是什么