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@lists.isocpp.org>,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@lists.isocpp.org> 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@lists.isocpp.org
https://lists.isocpp.org/mailman/listinfo.cgi/std-proposals
Std-Proposals mailing list
Std-Proposals@lists.isocpp.org
https://lists.isocpp.org/mailman/listinfo.cgi/std-proposals