Perché ho sovraccaricato il operator++
per una classe iteratoreCome differenziare (durante il sovraccarico) tra forme prefissate e postfissa di operatore ++? (C++)
template<typename T>
typename list<T>::iterator& list<T>::iterator::operator++()
{
//stuff
}
Ma quando cerco di fare
list<int>::iterator IT;
IT++;
ottengo un avvertimento circa non essendoci Postifx ++
, tramite il modulo di prefisso . Come posso sovraccaricare in modo specifico i moduli prefisso/postifx?
operatori Postfix dovrebbe tornare dal valore, non riferimento. Immagino che possano esserci situazioni molto strane in cui possono restituire un riferimento, ma cosa? Non questo, perché è stato incrementato ... –