std::unique_ptr<T,Deleter>::operator*
提供: cppreference.com
< cpp | memory | unique ptr
typenamestd::add_lvalue_reference<T>::type operator*()const; | (1) | (C++11以上) |
pointer operator->()constnoexcept; | (2) | (C++11以上) |
operator*
および operator->
は *this が所有するオブジェクトへのアクセスを提供します。
get()== nullptr の場合、動作は未定義です。
目次 |
[編集]引数
(なし)
[編集]戻り値
1) *this の所有するオブジェクトを返します。 *get() と同等です。
2) *this の所有するオブジェクトを返します。 get() と同等です。
[編集]例外
1) pointer
が例外を投げる operator*
を定義している場合、例外を投げるかもしれません。
[編集]例
Run this code
#include <iostream>#include <memory> struct Foo {void bar(){std::cout<<"Foo::bar\n";}}; void f(const Foo& foo){std::cout<<"f(const Foo&)\n";} int main(){std::unique_ptr<Foo> ptr(new Foo); ptr->bar(); f(*ptr);}
出力:
Foo::bar f(const Foo&)
[編集]関連項目
管理対象オブジェクトへのポインタを返します (パブリックメンバ関数) |