C++ Logo

std-proposals

Advanced search

Re: non_owned_ptr

From: Steve Weinrich <weinrich.steve_at_[hidden]>
Date: Sun, 10 Nov 2019 22:34:04 -0700
Well, the inclusion in the extensions is by no means a guarantee of
inclusion in a future standard. A quick Google search reveals this view:

https://www.google.com/url?sa=t&source=web&cd=2&ved=2ahUKEwi3qPeJtuHlAhXY7Z4KHX0oAKwQFjABegQIBBAB&url=http%3A%2F%2Fwww.open-std.org%2Fjtc1%2Fsc22%2Fwg21%2Fdocs%2Fpapers%2F2019%2Fp1408r0.pdf&usg=AOvVaw0c3gIhAirNc6KT1xM_FmMM


In any case, it seems that my notion is not new. Thanks!

On Sun, Nov 10, 2019, 22:20 Jorg Brown <jorg.brown_at_[hidden]> wrote:

> > Is it in serious consideration?
>
> Consideration for what? It's part of Version 2 of the C++ Extensions for
> Library Fundamentals
> <https://en.cppreference.com/w/cpp/experimental/lib_extensions_2>,
> ISO/IEC TS 19568:2017.
>
> Code such as this currently compiles:
>
> #include <experimental/memory>
>
> int f() {
> int a = 1;
> std::experimental::observer_ptr<int> op(&a);
> *op += 1;
> return a;
> }
>
> As can be seen at https://godbolt.org/z/GQFeh4
>
> = - = - = - = - =
>
> > the current convention of using raw pointers to represent transient
> pointers.
>
> std::span<T, 1> might also fill that need, depending on your application.
>
>
> On Sun, Nov 10, 2019 at 9:09 PM Steve Weinrich via Std-Proposals <
> std-proposals_at_[hidden]> wrote:
>
>> None. I was not aware of observer_ptr. Is it in serious consideration?
>>
>> On Sun, Nov 10, 2019, 22:03 Andrew Tomazos <andrewtomazos_at_[hidden]>
>> wrote:
>>
>>> How does it differ from:
>>>
>>> https://en.cppreference.com/w/cpp/experimental/observer_ptr
>>>
>>> On Mon, Nov 11, 2019 at 1:45 PM Steve Weinrich via Std-Proposals <
>>> std-proposals_at_[hidden]> wrote:
>>>
>>>> I was thinking that a non_owned_ptr would be a good std addition. The
>>>> idea is to formalize the current convention of using raw pointers to
>>>> represent transient pointers (transient_ptr might be a better name).
>>>>
>>>> Aside from a lot of details, it would simply be a template wrapper
>>>> around a raw pointer. On destruction, the wrapper would do nothing.
>>>>
>>>> This would allow the enforcement of the intended behavior.
>>>>
>>>> What do you all think?
>>>> --
>>>> Std-Proposals mailing list
>>>> Std-Proposals_at_[hidden]
>>>> https://lists.isocpp.org/mailman/listinfo.cgi/std-proposals
>>>>
>>> --
>> Std-Proposals mailing list
>> Std-Proposals_at_[hidden]
>> https://lists.isocpp.org/mailman/listinfo.cgi/std-proposals
>>
>

Received on 2019-11-10 23:36:34