In the case that some private vars are required before public/protected
methods (inline methods), is it preferred to put *all* vars in a
private section before the methods, or only the ones required? I
would say all vars so you don't have two var sections, and to make
packing possibly more efficient.

While I agree with public before private for API readability,
I still am not sure this is the most practical. Because the
inline-requiring-private-vars case is somewhat common, I would almost
propose private before public so we don't have a bunch of classes
with what looks like different styles.

Also, I'm not saying language designers are always correct in their
vision, but the fact that the 'default' access level is private may
say something about what should come first. :)

I could go either way.

-Eric

On Mon, Feb 08, 2010 at 01:01:05PM -0500, Jay Pipes wrote:
>    ++
> 
>    On Mon, Feb 8, 2010 at 12:35 PM, Monty Taylor <[email protected]>
>    wrote:
> 
>      Padraig O'Sullivan wrote:
>      > Hi!
>      >
>      > I was working on a class today in Drizzle and wasn't sure what the
>      > coding standard is with regard to declaration order i.e. public before
>      > private or private before public. There is a sub-section on this in
>      > the coding standards right now which indicates no conclusion was made:
>      >
>      > http://drizzle.org/wiki/Coding_Standards#Declaration_Order
>      >
>      > Personally, I prefer public before private. But I'd like to at least
>      > choose one order and place it in the coding standards so we can be
>      > consistent.
> 
>      Both the Google C++ coding standards [1] and the Ellemtel C++ standards
>      [2] require public: then protected: then private:. [3][4] I tend to
>      agree... when I start reading a class def, I'm usually looking for API
>      first, and I can read further if I want to see implementation details.
> 
>      So my vote is to swipe the text from the Google standard (I like their
>      supplementary text too.
> 
>      [1] http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml
>      [2] http://www.doc.ic.ac.uk/lab/cplus/c++.rules/
>      [3]
>      
> http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Declaration_Order
>      [4] http://www.doc.ic.ac.uk/lab/cplus/c++.rules/chap6.html#sect1
>      _______________________________________________
>      Mailing list: https://launchpad.net/~drizzle-discuss
>      Post to A  A  : [email protected]
>      Unsubscribe : https://launchpad.net/~drizzle-discuss
>      More help A  : https://help.launchpad.net/ListHelp

> _______________________________________________
> Mailing list: https://launchpad.net/~drizzle-discuss
> Post to     : [email protected]
> Unsubscribe : https://launchpad.net/~drizzle-discuss
> More help   : https://help.launchpad.net/ListHelp


_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to