C++ Logo

std-proposals

Advanced search

Re: non_owned_ptr

From: Anthony Williams <anthony.ajw_at_[hidden]>
Date: Mon, 11 Nov 2019 15:28:34 +0000
Hi,

On 11/11/2019 05:48, Peter C++ via Std-Proposals wrote:
> Take a look at Anthony williams‘ jss::object_ptr. I consider it an
> improved version of observer_ptr

Which is available here: https://github.com/anthonywilliams/object_ptr/

Cheers,

Anthony

>> On 11 Nov 2019, at 06:34, Steve Weinrich via Std-Proposals
>> <std-proposals_at_[hidden]> wrote:
>>
>> 
>> 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]
>> <mailto: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]
>> <mailto: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] <mailto: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]
>> <mailto: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]
>> <mailto:Std-Proposals_at_[hidden]>
>> https://lists.isocpp.org/mailman/listinfo.cgi/std-proposals
>>
>> --
>> Std-Proposals mailing list
>> Std-Proposals_at_[hidden]
>> <mailto: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-11 09:30:57