ネットワーク拡張
From cppreference.com
< cpp | experimental
C++ ネットワーク拡張、ISO/IEC TS 19216:2018 は、このページに記載されている C++ 標準ライブラリの新しいコンポーネントを定義しています。
Networking TS は、Library Fundamentals TS バージョン 1 によって変更された C++14 標準に基づいています。その設計は Asio ライブラリに基づいています。
目次 |
[編集] ライブラリ命名要件
Networking TS の規範テキストでは、ライブラリへの期待を定義するために以下の命名要件が使用されています。プログラマは、ライブラリテンプレートがこれらの要件を満たすテンプレート引数でインスタンス化されていることを確認する責任があります。そうしないと、非常に複雑なコンパイラ診断が発生したり、実行時に未定義の動作が発生したりする可能性があります。
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| 操作の入力として使用できるメモリ領域のセットを表します。 (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) | |
| (命名要件) |
[編集] 便利なヘッダー
<experimental/net>
|
他のすべての Networking TS ヘッダーをインクルードする便利なヘッダー |
<experimental/netfwd>
|
Networking TS の主要コンポーネントの前方宣言が含まれています。 |
[編集] 非同期モデル
| ヘッダー
<experimental/executor> で定義されています。 | |
| 名前空間
std::experimental::net で定義されています。 | |
非同期結果 | |
| (クラステンプレート) | |
| (クラステンプレート) | |
| (クラステンプレート) | |
| (関数テンプレート) | |
実行コンテキストとサービス | |
| (クラス) | |
| (関数テンプレート) | |
| (関数テンプレート) | |
| (関数テンプレート) | |
| (クラス) | |
Executor | |
| (クラステンプレート) | |
| (クラス) | |
| (クラステンプレート) | |
| (クラステンプレート) | |
| (関数テンプレート) | |
| (クラステンプレート) | |
| (関数テンプレート) | |
| (クラステンプレート) | |
| (クラス) | |
| (クラス) | |
| (クラス) | |
| (クラス) | |
Dispatch/post/defer | |
| (関数テンプレート) | |
| (関数テンプレート) | |
| (関数テンプレート) | |
Strand | |
| (クラステンプレート) | |
std::future との相互運用 | |
| (クラステンプレート) | |
[編集] 基本的なI/Oサービス
| ヘッダー
<experimental/io_context> で定義されています。 | |
| 名前空間
std::experimental::net で定義されています。 | |
| (クラス) | |
[編集] バッファとバッファ指向ストリーム
| ヘッダー
<experimental/buffer> で定義されています。 | |
| 名前空間
std::experimental::net で定義されています。 | |
ストリームエラーコード | |
| (関数) | |
| (enum) | |
バッファ | |
| (クラス) | |
| (クラス) | |
| (関数テンプレート) | |
バッファ型特性 | |
| (クラステンプレート) | |
| (クラステンプレート) | |
| (クラステンプレート) | |
バッファシーケンスアクセス | |
| (関数テンプレート) | |
| (関数テンプレート) | |
バッファ操作 | |
| (関数テンプレート) | |
| (関数テンプレート) | |
動的バッファ | |
| (クラステンプレート) | |
| (クラステンプレート) | |
| (関数テンプレート) | |
バッファI/O | |
| (クラス) | |
| (クラス) | |
| (クラス) | |
| (関数テンプレート) | |
| (関数テンプレート) | |
| (関数テンプレート) | |
| (関数テンプレート) | |
| (関数テンプレート) | |
| (関数テンプレート) | |
[編集] ソケットとソケットストリーム
| ヘッダー
<experimental/socket> で定義されています。 | |
| 名前空間
std::experimental::net で定義されています。 | |
ソケットエラーコード | |
| (enum) | |
| (関数) | |
ソケット | |
| (クラス) | |
| (クラステンプレート) | |
| (クラステンプレート) | |
| (クラステンプレート) | |
| (クラステンプレート) | |
ソケットストリーム | |
| (クラステンプレート) | |
| (クラステンプレート) | |
接続操作 | |
| (関数テンプレート) | |
| (関数テンプレート) | |
[編集] インターネットプロトコル
| ヘッダー
<experimental/internet> で定義されています。 | |
| 名前空間
std::experimental::net::ip で定義されています。 | |
リゾルバエラーコード | |
| (enum) | |
| (関数) | |
IPアドレス | |
| (クラス) | |
| (関数テンプレート) | |
| (クラス) | |
| (関数テンプレート) | |
| (クラス) | |
| (クラス) | |
| (関数テンプレート) | |
アドレス反復 | |
| (クラステンプレート) | |
| (クラステンプレート) | |
ネットワーク | |
| (クラス) | |
| (関数テンプレート) | |
| (クラス) | |
| (関数テンプレート) | |
エンドポイント | |
| (クラステンプレート) | |
名前解決 | |
| (クラステンプレート) | |
| (クラステンプレート) | |
| (クラス) | |
| (クラステンプレート) | |
ホスト名 | |
| (関数テンプレート) | |
TCPおよびUDPソケット | |
| (クラス) | |
| (クラス) | |
ソケットオプション | |
| 名前空間
std::experimental::net::ip で定義されています。 | |
| (クラス) | |
| 名前空間
std::experimental::net::ip::unicast で定義されています。 | |
| (クラス) | |
| 名前空間
std::experimental::net::ip::multicast で定義されています。 | |
| (クラス) | |
| (クラス) | |
| (クラス) | |
| (クラス) | |
| (クラス) | |