Because I've overloaded the operator++
for an iterator class
template<typename T>
typename list<T>::iterator& list<T>::iterator::operator++()
{
//stuff
}
But when I try to do
list<int>::iterator IT;
IT++;
I get a warning about there being no postifx ++
, using prefix form. How can I specifically overload the prefix/postifx forms?
everything about operator overloading http://www.parashift.com/c++-faq-lite/operator-overloading.html
http://www.devx.com/tips/Tip/12515
Postfix has an int argument in the signature.
Write a version of the same operator overload, but give it a parameter of type
int
. You don't have to do anything with that parameter's value.If you're interested in some history of how this syntax was arrived out, there's a snippet of it here.