からのfstreamオブジェクトを作成fstream
オブジェクトを作成する周知の方法は次のとおりです。FILEの*ポインタ
ifstream fobj("myfile.txt");
すなわち。ファイル名を使用します。
しかし、ファイル記述子を使用してifstreamオブジェクトを作成したいとします。
理由:私は
_popen()
を使用してコマンドを実行します。_popen()
は、出力をFILE*
として返します。 FILE *ポインタは関係していますが、ファイル名はありません。
@Joe:POSIXファイルディスクリプタがまだ別のものです。恐らく、C++のiostreamとC I/Oの両方がPosixプラットフォーム上で実装されていると思われます。しかし、iostreams *と* C I/Oの両方が標準ライブラリの一部であるため、現在の質問はより合理的です。 –
これは、 'FILE *'で 'fileno'を使うことができれば、これはhttp://stackoverflow.com/questions/2746168/how-to-construct-ac-fstream-from-a-posix-file-descriptorの複製です。 'popen'から返されました – Alnitak