tags:

views:

79

answers:

3

I have a property of a class, for example, const CFoo &bar() const, what does it mean?

+7  A: 

The method bar returns a reference to a const CFoo (that's the const CFoo & part before bar), and calling this method does not modify any variables that are not marked as mutable (that's the const after the parentheses).

See also the C++ FAQ Lite entries What does "Fred const& X" mean? and What is a "const member function"?.

Mark Rushakoff
+1  A: 

It's a const function (doesn't modify any non-mutable members of the object) member function that returns a reference to a const CFoo.

Jerry Coffin
+5  A: 
const CFoo& bar() const
----------      --------
      ^               ^
Returns a connst      None of the member variables of the class to which bar
reference of CFoo.    method belongs to can be modified.
                      unless member variable is prefexex with keyword mutable
aJ
thanks, nice layout.
sasayins