Doug,

if you take care of performance hit of object copying, the rule "Use
the C++ keyword explicit for constructors with one argument." would be
your friend as well.

There are a lot of places where objects are constructed implicitly.
For example, CommAddress out of InetAddr.

2010/4/4, Doug Judd <[email protected]>:
> Hi Conferno,
>
> I agree that this is probably a good rule that we should start adopting.  I
> can think of another serious performance bug that was introduced in the past
> due to inadvertently making a copy of an object.  I cringe at the thought of
> sweeping through the entire code base and adding that macro to every class.
> Maybe we can start with some of the big ones (RangeServer, Range,
> AccessGroup, CellStore, etc.) and then slowly introduce it to other classes
> over time.  I just filed issue 434 (
> http://code.google.com/p/hypertable/issues/detail?id=434) for this one.
> Thanks.
>
> - Doug
>
> P.S. I don't particularly believe in the 80 column rule.  With C++, 80
> columns is inadequate.  It may be a little more doable with C or other terse
> languages, but with namespaces, nested namespaces, nested classes, etc. 80
> columns is unreasonably small.  Especially given Google's rule of not
> allowing the 'using' keyword.  I do try to keep lines under 80 columns, but
> if the only way to keep the line under 80 columns is to make it look really
> ugly, then I'll break the rule.
>
> On Fri, Apr 2, 2010 at 9:21 PM, conferno <[email protected]> wrote:
>
>> Hi
>>
>> I have seen that you took something from <a
>> href="http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml
>> ">Google
>> C++ Style Guide</a>:
>>  two-spaces indentation, 80 char line limit, no spaces inside
>> parentheses, define guards in headers, using namespaces, ...
>>
>> What do you thing to take more rules from that document ?
>>
>> They have right ideas, and also automatic checking tools.
>>
>> For example <a href="
>> http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml?showone=Copy_Constructors#Copy_Constructors
>> ">the
>> rule about copy constructors</a> could prevent issue 422.
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Hypertable Development" group.
>> To post to this group, send email to [email protected].
>> To unsubscribe from this group, send email to
>> [email protected]<hypertable-dev%[email protected]>
>> .
>> For more options, visit this group at
>> http://groups.google.com/group/hypertable-dev?hl=en.
>>
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Hypertable Development" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/hypertable-dev?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Hypertable Development" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/hypertable-dev?hl=en.

Reply via email to