C++ Logo

std-proposals

Advanced search

Re: [std-proposals] Add more methods to std::initializer_list instead of overloading

From: Jiang An <de34_at_[hidden]>
Date: Sat, 03 Sep 2022 21:09:43 +0800
I think if it's already known that il is initializer_list, one can just write il.begin()/il.end(), as they return pointers to the const-qualified element type.

If the consistency between range types is desired, free function templates or CPOs should be used since they handle built-in array types.

Yours,
Jiang An



发自我的小米
在 blacktea hamburger via Std-Proposals <std-proposals_at_[hidden]>,2022年9月3日 20:53写道:

But I think il.cbegin() is clearer.
They will also find that only il.begin()/il.end() works, which is weird.

On Sat, Sep 3, 2022 at 8:40 PM Thiago Macieira via Std-Proposals <std-proposals_at_[hidden]> wrote:
On Saturday, 3 September 2022 03:05:24 -03 blacktea hamburger via Std-
Proposals wrote:
> I do not believe that adding ranges eliminates the need to care about old
> things. It's also impossible that no one will try il.cbegin() and get a
> compile error.

Yes, they will. At that point, they'll fix it to write:

  std::as_const(il).begin()

--
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel DCAI Cloud Engineering



--
Std-Proposals mailing list
Std-Proposals_at_[hidden]
https://lists.isocpp.org/mailman/listinfo.cgi/std-proposals

Received on 2022-09-03 13:09:54