Re: cvs commit: squid3/src/ICAP ICAPConfig.cc MsgPipeData.h

From: Duane Wessels <wessels@dont-contact.us>
Date: Fri, 3 Mar 2006 23:15:01 -0700 (MST)

>> I started down that path and wasted about 4 days on it. Switching
>> from normal pointers to ::Pointer is not pleasant for something
>> that is used so pervasively.
>
> Not sure I see the problem. The typing overhead in the source should be
> the same as in the macro approach, except that it can be automated a bit
> more..

A couple of things were annoying:

You can reference a Foo* without including Foo.h, but Foo::Pointer
requires including Foo.h (and its dependencies).

::Pointer doesn't work for derived classes. For example, HttpMsg
is a base class for HttpRequest and HttpReply and you can pass an
HttpRequest* to a function that has HttpMsg* as a parameter. But
it doesn't work with HttpMsg::Pointer. To get around it you have
to use the getRaw() hack.

These are of course solvable, but annoying. Its been too long for
me to remember exactly the "straw that broke the camel's back"
when I tried converting to ::Pointer.

DW
Received on Fri Mar 03 2006 - 23:15:02 MST

This archive was generated by hypermail pre-2.1.9 : Sat Apr 01 2006 - 12:00:06 MST