У меня возникли проблемы с преобразованием std::list<MyType>::iterator
в MyType*
. У меня есть массив MyType
, и, как я прокручиваю его, я вызываю void doSomething(const MyType* thing)
. В конце концов, я делаю это:Операция & * x создает копию?
std::list<MyType> types = ... something here ...;
for(std::list<MyType>::const_iterator it = types.begin(), end = types.end(); it != end; ++it) {
doSomething(&*it);
}
Мой вопрос, является ли я или не создать копию памяти в MyType
этой операции:
&*it
Попытка просто передать итератор, как если бы это было указатель, или для приведения итератора к указателям, вызванным ошибками компилятора.
Нет, это не так. –