std::unique_ptr<T,Deleter>::operator bool
From cppreference.com
< cpp | memory | unique ptr
| explicit operator bool() const noexcept; |
(C++11以降) (C++23 以降 constexpr) |
|
オブジェクトを所有しているか(つまり、get() が nullptr でないか)をチェックします。
目次 |
[編集] パラメータ
(なし)
[編集] 戻り値
true: オブジェクトを所有している場合。false: それ以外の場合。
[編集] 例
このコードを実行
#include <iostream> #include <memory> int main() { std::unique_ptr<int> ptr(new int(42)); if (ptr) std::cout << "before reset, ptr is: " << *ptr << '\n'; ptr.reset(); (ptr ? (std::cout << "after reset, ptr is: " << *ptr) : (std::cout << "after reset ptr is empty")) << '\n'; }
出力
before reset, ptr is: 42 after reset ptr is empty
[編集] 関連項目
| 管理対象オブジェクトへのポインタを返す (public メンバ関数) |