私のコンピュータサイエンスプログラムでは、Cで子プロセス、フォーク、パイプ、ファイル記述子などを操作するように教えられてきましたが、C++で同等の処理を行ったことはありません。
同じライブラリを使用していますか、それともC ++には独自の(できれば単純化された)システムライブラリがいくつかありますか?
私のコンピュータサイエンスプログラムでは、Cで子プロセス、フォーク、パイプ、ファイル記述子などを操作するように教えられてきましたが、C++で同等の処理を行ったことはありません。
同じライブラリを使用していますか、それともC ++には独自の(できれば単純化された)システムライブラリがいくつかありますか?
あなたが説明したものの種類は、実際にはC固有ではなく、システム固有です。周りを見渡せば、それらのラッパーを見つけることができるかもしれませんが、それらはC ++標準(またはC標準)の一部ではありません。
例として、標準Cでファイル記述子を使用する理由はありません。これが、ファイルstruct、fopen、fclose、fread、fwriteなどの目的です。ファイル記述子を使用している場合は、Cではなくオペレーティングシステムについて教えられているためです。
フォーク、パイプ、実行; 親プロセス、子プロセス:あなたはPOSIXについて話している。POSIX標準は、C++ではなくCで記述されています。いくつかの例外を除いて、POSIXライブラリ関数はC標準と一致しているか、C標準を拡張しています。C ++からC関数を呼び出すことができるため、これと同じ機能をPOSIX準拠のC /C++システムで使用できます。ただし、C ++ではなくCに焦点が当てられています。これは、C++が関数fork
のexec
ファミリーなどのライブラリ関数の母国語であるためです。
C ++ 11はPOSIXとWindowsのスレッドの概念を採用していますが、forkやexec、パイプなどの重量のあるマルチプロセッシングのものはCベースです。
CまたはC++wrtプロセス、子プロセスなどに固有のものはありません。Cでプログラミングしているときに利用できるものは、C++でも利用できるはずです。オブジェクト指向スタイルとRAIIの利点のために設計できるラッパークラスをいつでも使用できます。