我可以测试wstring :: iterator与非特定:: end的相等性吗?

时间:2014-03-28 20:44:45

标签: c++ iterator

我希望重载operator []。我希望接受一个std :: wstring :: iterator作为此方法的参数。但是,我希望增加这个迭代器,直到我到达wstring的末尾。有没有办法做到这一点?这里有一些伪代码,希望能让我的命题明确:

MyClass operator[](std::wstring::iterator it)
{
    /* Obviously this wstring::iterator::parent method is a figment
     * of my imagination; but hopefully it'll give the reader some
     * idea what I wish to achieve. */
    while (++it != it.parent_wstring.end())
        { party(); }
}

我曾尝试与类型转换的nullptr进行比较,如下所示:

if (it == (std::wstring::iterator)nullptr)
    { party(); }

并且有这个奇妙的想法:

if (it == std::wstring(L"").end())
    { party(); }

但都没有奏效。如果上述任何一种努力都引起了畏缩,那么道歉(以及一些欣喜若狂的虐待狂)。

1 个答案:

答案 0 :(得分:0)

知道了。几分。

if (*it == 0)
        { party(); }

这让我成为我想要的派对。请鼓励任何其他答案(这可能是一个比基本上解除引用结束迭代器更好的想法)!我要去了解我有多少可以依赖那个零点。