← Back to team overview

dolfin team mailing list archive

const inconsistencies for operator* in inheriting Iterator classes

 

Hi!

Since we talk so much about constantness in another post :),
I am just wondering why the operator* (and related operator)
in Iterator classes sometimes returns a const reference to an entity like
inline const Facet& operator*() { return *operator->(); }
and sometimes not as in
inline Cell& operator*() { return *operator->(); }

Should that not be consistent and even better should not both version be provided, as in
inline const Facet& operator*() const { return *operator->(); }
and				(^^^ there should be a second const)
inline Facet& operator*() { return *operator->(); }
?

--
Andre

--
André Massing       		email: massing@xxxxxxxxx
Ph.D. student			mobile: +47 469 57 401
Simula Research Laboratory
NO-1367 Fornebu, Norway