Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::experimental::shared_ptr

      From cppreference.com
      <cpp‎ |experimental
       
       
       
       
       
      Defined in header<experimental/memory>
      template<class T>class shared_ptr;
      (library fundamentals TS)

      std::experimental::shared_ptr is a modified version ofstd::shared_ptr that adds support for arrays.

      Contents

      [edit]Member types

      Member type Definition
      element_typestd::remove_extent_t<T>

      [edit]Member functions

      constructs newshared_ptr
      (public member function)[edit]
      Observers
      returns the stored pointer
      (public member function)[edit]
      dereferences the stored pointer
      (public member function)[edit]
      provides index access to the array
      (public member function)[edit]

      [edit]Non-member functions

      appliesstatic_cast,dynamic_cast,const_cast, orreinterpret_cast to the stored pointer
      (function template)[edit]

      [edit]Helper classes

      hash support forstd::experimental::shared_ptr
      (class template specialization)[edit]

      Members and non-members identical tostd::shared_ptr

      Member functions

      The following member functions work withstd::experimental::shared_ptr instead ofstd::shared_ptr andstd::experimental::weak_ptr instead ofstd::weak_ptr. The behavior is otherwise identical.

      destructs the owned object if no moreshared_ptrs link to it
      (public member function ofstd::shared_ptr<T>)[edit]
      assigns theshared_ptr
      (public member function ofstd::shared_ptr<T>)[edit]
      Modifiers
      replaces the managed object
      (public member function ofstd::shared_ptr<T>)[edit]
      swaps the managed objects
      (public member function ofstd::shared_ptr<T>)[edit]
      Observers
      returns the number ofshared_ptr objects referring to the same managed object
      (public member function ofstd::shared_ptr<T>)[edit]
      (until C++20)
      checks whether the managed object is managed only by the currentshared_ptr object
      (public member function ofstd::shared_ptr<T>)[edit]
      checks if the stored pointer is not null
      (public member function ofstd::shared_ptr<T>)[edit]
      provides owner-based ordering of shared pointers
      (public member function ofstd::shared_ptr<T>)[edit]

      Non-member functions

      These non-member functions are declared in thestd::experimental namespace, and work withstd::experimental::shared_ptr rather thanstd::shared_ptr, but otherwise behaves identically to the corresponding C++14 function.

      creates a shared pointer that manages a new object
      (function template)[edit]
      creates a shared pointer that manages a new object allocated using an allocator
      (function template)[edit]
      returns the deleter of specified type, if owned
      (function template)[edit]
      (removed in C++20)(removed in C++20)(removed in C++20)(removed in C++20)(removed in C++20)(C++20)
      compares with anothershared_ptr or withnullptr
      (function template)[edit]
      outputs the value of the stored pointer to an output stream
      (function template)[edit]
      specializes thestd::swap algorithm
      (function template)[edit]
      specializes atomic operations forstd::shared_ptr
      (function template)[edit]

      Helper class templates

      These class templates are declared in thestd::experimental namespace, and work withstd::experimental::shared_ptr andstd::experimental::weak_ptr rather thanstd::shared_ptr andstd::weak_ptr, but otherwise behaves identically to the corresponding C++14 class template.

      (C++11)
      provides mixed-type owner-based ordering of shared and weak pointers
      (class template)[edit]
      allows an object to create ashared_ptr referring to itself
      (class template)[edit]

      [edit]Example

      This section is incomplete
      Reason: no example
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/experimental/shared_ptr&oldid=164521"

      [8]ページ先頭

      ©2009-2025 Movatter.jp