通过std:list <wstring>迭代

ᴘᴀɴ*_*ᴛɪs 1 c++ stdlist

这是我的代码:

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

我想要做的是访问列表中包含的每个wstring并调用它的size()成员函数.然而什么是由ITR指出似乎并没有成为迭代wstring的元素,我得到一个错误(错误C2039:"尺寸":不是的一员"的std :: _ List_iterator <_Mylist>")

如果你想知道kb是什么,它是指向一个结构的指针,std::list<std::wstring> titles;作为其中一个成员.

有想法该怎么解决这个吗?

Pra*_*ian 8

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

_size += (*itr).size();
Run Code Online (Sandbox Code Playgroud)

甚至更好,

_size += itr->size();
Run Code Online (Sandbox Code Playgroud)