IWETHEY v. 0.3.0 | TODO
1,095 registered users | 0 active users | 0 LpH | Statistics
Login | Create New User
IWETHEY Banner

Welcome to IWETHEY!

New Don't change the object, I believe
Const in C/C++ is rather messy. But used that way I believe it means that calling IsEmpty() won't change the object it is a method of.

Jay
New Doh.
Alright, that answer was too straightforward to register in my brain (especially since C++ is rather obtuse). So based on what you and Todd have said, the const modifier here just means that there is a contract for the method that promises not to alter the state of the object when invoked. More of a "const safe" sort of declaration.

Thanks.
New More than that...
Because IsEmpty() promises not to change the object, The compiler will allow you to invoke this method on a const object (that is, an object whose contents have been declared to be...well...constant). So if you declare a const TextView object, thus:

const TextView aConstView

you could invoke the (const) IsEmpty() method:

bool empty_view = aConstView.IsEmpty(); // compiler will allow this
jb4
"So don't pay attention to the approval ratings that say 68% of Americans disapprove of the job this man is doing. I ask you this, does that not also logically mean that 68% approve of the job he's not doing? Think about it. I haven't."
Stephen Colbert, at the White House Correspondent's Dinner 29Apr06
     C++ question on const - (ChrisR) - (24)
         Don't change the object, I believe - (JayMehaffey) - (2)
             Doh. - (ChrisR) - (1)
                 More than that... - (jb4)
         Re: C++ question on const - (tuberculosis) - (20)
             I still don't understand... - (ChrisR) - (19)
                 Const is not always forced - (JayMehaffey)
                 Its counterintuitive - (tuberculosis) - (14)
                     Say WHAT?!? - (jb4) - (13)
                         You can overload on const - (tuberculosis) - (11)
                             Why the hell would it do / allow that? - (drewk) - (1)
                                 Bell labs has an unlimited crack budget - (tuberculosis)
                             The easiness to keep track of is not the issue - (jb4) - (8)
                                 Huh? - (tuberculosis) - (7)
                                     No... - (jb4) - (6)
                                         I think you're talking past each other... - (admin)
                                         And you specify that by.... - (tuberculosis) - (4)
                                             We'll leave it at that. - (jb4) - (3)
                                                 I wasn't trying to be sarcastic - (tuberculosis) - (2)
                                                     No need to specify OO in this case - (JayMehaffey)
                                                     What does the type of the reference have to do with anything - (jb4)
                         Nominating this for LRPD (new thread) - (lincoln)
                 Re: I still don't understand... - (jb4) - (2)
                     Which brings up another question. - (ChrisR) - (1)
                         Pure virtual functions - (tuberculosis)

Choose life. Choose LRPDism-spotting.
47 ms