A member function declared with the const qualifier can be called for
constant and nonconstant objects. A nonconstant member function can
only be called for a nonconstant object. Similarly, a member function
declared with the volatile qualifier can be called for volatile and
nonvolatile objects. A nonvolatile member function can only be called
for a nonvolatile object.
Related References