public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: Andrew Burgess <andrew.burgess@embecosm.com>
To: Luis Machado <luis.machado@linaro.org>
Cc: Simon Marchi <simon.marchi@polymtl.ca>,
	John Baldwin <jhb@freebsd.org>,
	Simon Marchi via Gdb-patches <gdb-patches@sourceware.org>
Subject: Re: Coding standards proposal, usage of "this"
Date: Tue, 17 Aug 2021 11:01:15 +0100	[thread overview]
Message-ID: <20210817100115.GM462163@embecosm.com> (raw)
In-Reply-To: <1fd0ea1c-7226-62a0-0568-6793a41ab9a7@linaro.org>

* Luis Machado via Gdb-patches <gdb-patches@sourceware.org> [2021-08-16 14:23:42 -0300]:

> On 8/16/21 2:11 PM, Simon Marchi via Gdb-patches wrote:
> > On 2021-08-16 1:06 p.m., John Baldwin wrote:
> > > On 8/13/21 7:26 AM, Simon Marchi via Gdb-patches wrote:
> > > > Hi all,
> > > > 
> > > > Here's something I had in mind for a while.  We don't consistently use
> > > > `this` when referring to fields or methods of the current object.  I
> > > > never now if I should use it or not, or point it out in review.  I
> > > > therefore propose these rules so that we have something to refer to.
> > > > 
> > > >    - Use `this` when referring to a data member that is not prefixed by
> > > >      `m_`.  Rationale: without `this`, it's not clear that you are
> > > >      referring to a member of the current class, versus a local or global
> > > >      variable.
> > > >    - Don't use `this` when referring to a data member that is prefixed by
> > > >      `m_`.  Rationale: the prefix already makes it clear that you are
> > > >      referring to a member of the current class, so adding `this` would
> > > >      just add noise.
> > > 
> > > These seem fine to me.
> > > 
> > > >    - Use `this` when referring to a method of the current class.
> > > >      Rationale: without `this, it's not clear that you are referring to a
> > > >      method of the current class, versus a free function.
> > > 
> > > This one feels a bit odd to me, though it may just be something I'm not
> > > used to.  It is something I haven't seen used before in C++ at least.
> > 
> > So, the first two seem to be more accepted, and this last one less.  I'd
> > be fine just going with the first two then (even though in my opinion
> > the reason for using `this` to refer to a non-prefixed data member
> > applies the same when referring to a non-prefied member function).
> 
> My 2 cents. I wouldn't mind the change, but having to remember when to use
> "this" and when not to use it is worse to me than spending a couple minutes
> trying to figure out why the code is the way it is.

Except most code is written once, and debugged many times.  So in the
long run it's much more efficient to spend a minute longer writing
the code, even if it saves just a few seconds off reading (and
understanding) the code.

IMHO, of course :)

Thanks,
Andrew

  parent reply	other threads:[~2021-08-17 10:01 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-13 14:26 Simon Marchi
2021-08-13 14:46 ` Paul Koning
2021-08-13 14:51   ` Simon Marchi
2021-08-13 14:47 ` Andrew Burgess
2021-08-15 13:34 ` Lancelot SIX
2021-08-16 16:40 ` Christian Biesinger
2021-08-16 16:59   ` Simon Marchi
2021-08-18 11:43     ` Ruslan Kabatsayev
2021-08-16 17:06 ` John Baldwin
2021-08-16 17:11   ` Simon Marchi
2021-08-16 17:23     ` Luis Machado
2021-08-16 17:31       ` Simon Marchi
2021-08-17 10:01       ` Andrew Burgess [this message]
2021-08-16 17:28     ` John Baldwin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210817100115.GM462163@embecosm.com \
    --to=andrew.burgess@embecosm.com \
    --cc=gdb-patches@sourceware.org \
    --cc=jhb@freebsd.org \
    --cc=luis.machado@linaro.org \
    --cc=simon.marchi@polymtl.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).