C++ Logo

std-proposals

Advanced search

Re: Proposal of constpub (DRAFT 1)

From: Matthew Woehlke <mwoehlke.floss_at_[hidden]>
Date: Mon, 13 Jan 2020 15:32:10 -0500
On 13/01/2020 13.14, Andrew Tomazos wrote:
> On Tue, Jan 14, 2020 at 3:15 AM Matthew Woehlke wrote:
>> I would rather see:
>>
>> class foo
>> {
>> public:
>> using x = std::as_const(m_x);
>> protected:
>> int m_x;
>> }
>
> This doesn't address the final concern in the paper, removing the need to
> create two different names for the same thing. ie In your example the two
> names `x` and `m_x` rather than just the one name `x`.

True, but TBH that is IMHO the least important aspect of the proposal.
I'm much less bothered by repeating a name than by having to use a
member function when what I really want is read-only access to a member
variable. The latter affects *my users*. The former only affects me.

Combine that with other features of my (counter)proposal:

- Does not need new keywords.

- Does not add an ambiguity issue for derived classes¹.

- Looks similar to, or can be implemented using, a feature that has
already been proposed and is more widely useful.

-- 
Matthew

Received on 2020-01-13 14:34:43