c++ - STL vector 、迭代器和插入 (C++)

标签 c++ vector iterator

我有一个向其传递 vector 迭代器的方法。 在这种方法中,我想将一些元素添加到 vector 中,但我不确定在只有迭代器时这是否可行

void GUIComponentText::AddAttributes(vector<GUIComponentAttribute*>::iterator begin, vector<GUIComponentAttribute*>::iterator end)
{
    for (vector<GUIComponentAttribute*>::iterator i = begin; i != end; ++i)
    {
        GUIComponentAttribute &attrib = *(*i);

        // Here are the GUIComponentAttribute objects analyzed - if an object of a 
        // special kind appears, I would like to add some elements to the vector
    }
}

谢谢 马库斯

最佳答案

在您显示的代码中,这是不可能的。特别是因为在迭代 vector 时不应向 vector 添加元素或从 vector 中删除元素。

关于c++ - STL vector 、迭代器和插入 (C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8255398/

相关文章:

C++ 整数 [?]

c++ - 为了使用 Glib::wrap,必须 Glib::init()'ed 什么?

c++ - 'get_call' 未在此范围内在 C++ 中声明

iterator - 如何为特征实现 "default iterator"?

c++ - 当一个字符串是 ""或一个 vector 没有元素时, `begin()` 等于 `end()` 吗?

javascript - ES2015 迭代器和迭代协议(protocol)可以避免副作用吗?

c++ - 影响原始输入消息的 Windows 键重复设置

c++ - 如何用 C++ 计算一个简单句子中的单词和数字

c++ - C++如何在二维 vector 初始化中创建不同的 vector ?

php - 使用 PHP 创建矢量图形