для проекта, над которым я работаю Я хотел бы иметь вектор «для каждого пользователя» для объектов struct.Создание нескольких экземпляров одного и того же вектора
Итак, я сделал это, чтобы объявить вектор:
// Defined in global namespace, and the pointer to structure objects is deliberate
typedef std::vector<s_AttachmentData*> AttachmentsContainer;
struct s_User
{
public:
AttachmentsContainer attachmentsData;
};
Я могу добавить такие объекты структуры к вектору без проблем. Я пытаюсь фактически получить доступ и изменить данные через итератор. Вот то, что я пробовал:
// 'p' is pointer to s_User structure above
for (AttachmentsContainer::iterator it = p->attachmentsData.begin(); it != p->attachmentsData.end(); ++it)
{
// Do stuff here, however I can't get to this point because the application crashes.
}
Я пытаюсь просто получить доступ к данным в контейнере, я могу заполнить векторы, но когда я петля и попытаться получить доступ что-нибудь, что я получаю ошибка векторных итераторов несовместимая ". Если кто-то может относиться к этому или может подтолкнуть меня в правильном направлении, я буду очень признателен! Я не мог найти ничего подобного, как ни странно.
Что вещи "вы делаете именно? В чем проблема, с которой вы столкнулись? – dreamzor
Обеспечьте хорошее [MCVE]. – Inline
@cawfee: Идея состоит в том, что вы отправляете код, который не работает, и скопируйте и вставьте сообщение об ошибке в вопрос. Это облегчает поиск информации для будущих читателей, и, конечно, это также облегчает ответ на вопрос. –