名前空間
変種
操作

std::shared_ptr::reset

提供: cppreference.com
< cpp‎ | memory‎ | shared ptr

 
 
ユーティリティライブラリ
支援を入力します (basic types, RTTI, type traits)
動的なメモリ管理
エラー処理
プログラムユーティリティ
可変個引数関数
日付と時刻
関数オブジェクト
initializer_list(C++11)
bitset
hash(C++11)
関係演算子
Original:
Relational operators
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
rel_ops::operator!=
rel_ops::operator>
rel_ops::operator<=
rel_ops::operator>=
ペアとタプル
Original:
Pairs and tuples
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
pair
tuple(C++11)
piecewise_construct_t(C++11)
piecewise_construct(C++11)
フォワード、スワップ、および移動
Original:
Swap, forward and move
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
swap
forward(C++11)
move(C++11)
move_if_noexcept(C++11)
declval(C++11)
 
動的なメモリ管理
低レベルのメモリ管理
アロケータ
Original:
Allocators
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
allocator
allocator_traits(C++11)
allocator_arg_t(C++11)
allocator_arg(C++11)
uses_allocator(C++11)
scoped_allocator_adaptor(C++11)
ストレージを初期化されていない
Original:
Uninitialized storage
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
uninitialized_copy
uninitialized_copy_n(C++11)
uninitialized_fill
uninitialized_fill_n
raw_storage_iterator
get_temporary_buffer
return_temporary_buffer
スマートポインタ
Original:
Smart pointers
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
unique_ptr(C++11)
shared_ptr(C++11)
weak_ptr(C++11)
auto_ptr(廃止予定)
owner_less(C++11)
enable_shared_from_this(C++11)
bad_weak_ptr(C++11)
default_delete(C++11)
ガベージコレクションをサポートしています
Original:
Garbage collection support
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
declare_reachable(C++11)
undeclare_reachable(C++11)
declare_no_pointers(C++11)
undeclare_no_pointers(C++11)
pointer_safety(C++11)
get_pointer_safety(C++11)
その他
Original:
Miscellaneous
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
pointer_traits(C++11)
addressof(C++11)
align(C++11)
Cライブラリ
Original:
C Library
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
 
std::shared_ptr
メンバ関数
Original:
Member functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
shared_ptr::shared_ptr
shared_ptr::~shared_ptr
shared_ptr::operator=
修飾子
Original:
Modifiers
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
shared_ptr::reset
shared_ptr::swap
オブザーバー
Original:
Observers
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
shared_ptr::get
shared_ptr::operator*
shared_ptr::operator->
shared_ptr::use_count
shared_ptr::unique
shared_ptr::operator bool
shared_ptr::owner_before
非メンバ関数
Original:
Non-member functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
std::swap
make_shared
allocate_shared
static_pointer_cast
dynamic_pointer_cast
const_pointer_cast
get_deleter
operator==
operator|=
operator<
operator<=
operator>
operator>=
operator<<
atomic_is_lock_free
atomic_load
atomic_load_explicit
atomic_store
atomic_store_explicit
atomic_exchange
atomic_exchange_explicit
atomic_compare_exchange_weak
atomic_compare_exchange_strong
atomic_compare_exchange_weak_explicit
atomic_compare_exchange_strong_explicit
std::hash
 
void reset();
(1) (C + + 11以来)
template< class Y >
void reset( Y* ptr );
(2) (C + + 11以来)
template< class Y, class Deleter >
void reset( Y* ptr, Deleter d );
(3) (C + + 11以来)
template< class Y, class Deleter, class Alloc >
void reset( Y* ptr, Deleter d, Alloc alloc );
(4) (C + + 11以来)
ptrが指すオブジェクトを使用して管理対象オブジェクトを置き換えます。オプションデリータdは後で全くshared_ptrオブジェクトがそれを所有しない場合、新しいオブジェクトを破棄するために使用され、供給することができます。デフォルトでは、delete式はデリータとして使用されます。付属の型に対応する適切なdelete式が常に選択され、これは、関数が別々のパラメータYを使用して、テンプレートとして実装されている理由です.
Original:
Replaces the managed object with an object pointed to by ptr. Optional deleter d can be supplied, which is later used to destroy the new object when no shared_ptr objects own it. By default, delete expression is used as deleter. Proper delete expression corresponding to the supplied type is always selected, this is the reason why the function is implemented as template using a separate parameter Y.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
*thisがすでにオブジェクトを所有し、それを所有している最後のshared_ptrない場合には、そのオブジェクトを所有デリータによって破棄されている.
Original:
If *this already owns an object and it is the last shared_ptr owning it, the object is destroyed through the owned deleter.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
オブジェクトがptrが既に所有しているが指す場合、未定義の動作での関数の結果.
Original:
If the object pointed to by ptr is already owned, the function results in undefined behavior.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
1)
もしあれば、管理対象オブジェクトの所有権を解放します。呼び出しの後、*thisはオブジェクトを管理していません.
Original:
Releases the ownership of the managed object, if any. After the call, *this manages no object.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
2-4)
ptrが指すオブジェクトを使用して管理対象オブジェクトを置き換えます。 Yは完全型とTに暗黙的に変換できる必要があります。さらに、次の
Original:
Replaces the managed object with an object pointed to by ptr. Y must be a complete type and implicitly convertible to T. Additionally:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
2)
デリータのようにdelete式を使用しています。有効な削除式が使用可能でなければなりません、すなわちdelete ptrが整形されている必要があり、明確に定義された動作をすると、任意の例外をスローしない。効果的にshared_ptr<T>(ptr).swap(*this);呼び出し.
Original:
Uses the delete expression as the deleter. A valid delete expression must be available, i.e. delete ptr must be well formed, have well-defined behavior and not throw any exceptions. Effectively calls shared_ptr<T>(ptr).swap(*this);.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
3)
デリータデリータとして、指定のdを使用しています。 Deleter、型の呼び出し可能T、すなわちd(ptr)が整形されている必要があり、明確に定義された動作をすると、任意の例外をスローしない。必要がありますDeleterCopyConstructibleでなければなりません。効果的にshared_ptr<T>(ptr, d).swap(*this);呼び出し.
Original:
Uses the specified deleter d as the deleter. Deleter must be callable for the type T, i.e. d(ptr) must be well formed, have well-defined behavior and not throw any exceptions. Deleter must be CopyConstructible. Effectively calls shared_ptr<T>(ptr, d).swap(*this);.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
4)
(3)と同じですが、さらに内部で使用するためのデータの配分にallocのコピーを使用します。 AllocAllocatorでなければなりません。コピーコンストラクタとデストラクタは例外をスローできません。効果的にshared_ptr<T>(ptr, d, alloc).swap(*this);呼び出し.
Original:
Same as (3), but additionally uses a copy of alloc for allocation of data for internal use. Alloc must be a Allocator. The copy constructor and destructor must not throw exceptions. Effectively calls shared_ptr<T>(ptr, d, alloc).swap(*this);.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

目次

[編集] パラメータ

ptr -
の所有権を取得するためのオブジェクトへのポインタ
Original:
pointer to an object to acquire ownership of
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
d -
デリータは、オブジェクトの削除のために保存します
Original:
deleter to store for deletion of the object
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
alloc -
アロケータの内部割当てに使用する
Original:
allocator to use for internal allocations
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[編集] 値を返します

(なし)
Original:
(none)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[編集] 例外

1)
noexcept specification:  
noexcept
  (C + + 11以来)
2-4)
などの関連コンストラクタで指定された.
Original:
As specified by the relevant constructor .
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[編集]

[編集] も参照してください

constructs new shared_ptr
(パブリックメンバ関数) [edit]