On Aug 16, 2010, at 9:06 AM, Ted Kremenek wrote:
>
> On Aug 15, 2010, at 6:15 PM, Jordy Rose wrote:
>
>> +
>> + operator bool() const {
>> + return getRegion() != NULL;
>> + }
>> };
>
> Hi Jordy,
>
> I'm really mixed about this. operator bool() is convenient, but in my
> experience it doesn't lead to better readability in the code. Why not just
> have clients call 'getRegion()', where the check becomes explicit? Using
> operator bool() also compounds the often abused use of bool. For me, bool is
> 'true' and 'false', not "is valid" or "is not valid". If someone doesn't
> know the correct interpretation of operator bool() in a specific context, it
> is easy to mess things up.
In general, conversion to bool is useful when the class may be used in the
pattern
if (C c = maybeGetAC()) {
}
I have no idea whether this pattern will be used with this class.
- Doug
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits