Я вижу, что вы пытались сделать. Вы определили poolFrames
как указатель на вектор. Затем вы хотите определить frameIterator
как итератор для poolFrames
. Поскольку poolFrames
является указателем, вы думаете, что вам нужен специальный итератор указатель на вектор, но вы ошибаетесь.
Векторный итератор - векторный итератор - векторный итератор, независимо от того, как вам удалось сослаться на вектор в первую очередь. Вам нужно frameIterator
, чтобы быть простым итератором:
vector<Data*>::iterator frameIterator;
Чтобы присвоить значение этой переменной, вам нужно разыменовать ваш векторный указатель, например:
frameIterator = poolFrames->begin();
Если бы poolFrames
был вектором вместо указателя на вектор, вместо него вы бы использовали оператор точки: poolFrames.begin()
.