ホームページ >バックエンド開発 >C++ >C 11 で移動元オブジェクトを処理するにはどうすればよいですか?

C 11 で移動元オブジェクトを処理するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-28 05:57:13192ブラウズ

How Do I Handle Moved-From Objects in C  11?

C 11 での移動元オブジェクトの処理

C 11 の「移動元」オブジェクトの概念を理解するのは難しい場合があります。オブジェクトが移動されると、不特定の状態になります。ただし、型定義では、移動元オブジェクトに対してどのような操作が有効であるかを指定する必要があります。

標準ライブラリ型の場合、移動元オブジェクトは有効ですが未指定の状態に置かれます。これは、操作を使用する前にその前提条件を確認する必要があることを意味します。たとえば、移動元文字列は、空の条件が検証されるまでポップバックできません。

カスタム タイプでは、開発者は移動元オブジェクトの状態を定義する責任があります。たとえば、pimpl オブジェクトは、オブジェクトからの移動によって do_stuff 操作が無効になるように指定できます。

言語設計により、予期しないオブジェクトの移動が防止されます。移動は、移動元オブジェクトに対してそれ以上のアクションが不可能な場合、またはユーザーが移動操作を明示的に要求した場合に発生します。

移動元オブジェクトは標準ライブラリの概念に当てはまらないことに注意することが重要です。型が (概念で定義された) 有効な状態に保たれていない場合、その型を標準ライブラリで使用することはできません。

以上がC 11 で移動元オブジェクトを処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。