2012-04-19 7 views
0

У меня есть класс Foo, и создали вектор для него, используя этот кодне не подходит для вызова «(станд :: вектор <foo>) (станд :: вектор <foo> :: итератора &)»

std::vector<foo> fooVector; 

у меня также есть итератор, используя этот код

std::vector<foo>::iterator locator; 

теперь я получаю эту ошибку

foo.cpp:29:25: error: no match for call to ‘(std::vector<foo>) (std::vector<foo>::iterator&)’ 

и соответствующая строка

if(fooVector(locator).getBoo() + (insertBar.geBoo()) < 4000) 

Насколько я могу судить, я правильно использую итератор?

Я не уверен, что не так, как я его использую?

ответ

0

fooVector(locator) Что вы хотите выразить этим?

fooVector - это переменная, не являющаяся функцией.

0

Если locator итератор правильно инициализирован перед использованием, то вы должны изменить свой код

if(locator->getBoo() + (insertBar.geBoo()) < 4000) 
Смежные вопросы