Up until now I considered it redundant, but I've just recently needed to use &* legitimately and was wondering if there are any other cases for its use?
Code:void doStuff( Foo* p ){ ... } ... list<Foo> foos; for( list<Foo>::iterator it = foos.begin(); it != foos.end(); ++it ) doStuff( &*it );