第8章 ファイルの操作
この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com
君はすでにC++についてかなり理解しているが、学ぶべきことはまだある。この章ではファイルの読み書きを行い、書き出しと読み込みを行う。第7章で書いたコードを使って模擬価格を生成し、保存し、それらを読み込む方法を学ぶ。そうすれば価格を取得する複数の方法が手に入る。
第1章ではストリームへの出力を、第2章ではストリームからの入力を書いた。C++ではファイルもストリームであるため、この章のプロジェクトに必要な知識はほぼ全て習得済みだ。ストリームを読み取る関数も既に書いたので、難しい部分は終わっている。この章では、std::cinではなくファイル を使ってget_prices関数を呼び出す方法を示す。
main関数から特定の値を返す方法(およびその理由)についても説明する。また、ビット演算子についても学ぶことになる。これはファイル制御にも同様の考え方が用いられるため、ここで関連性があるのだ。
ファイルへの書き込み
新しいmain.cppファイルを作成する。第7章 のget_prices関数を使って価格を生成するので、input.hをインクルードする。
main関数内に write_to_fileという関数を作成し、生成した価格をファイルに書き込む。以前std::coutで画面に出力していたが、C++でファイルに書き込むにはstd::ofstreamという出力ファイルストリームを使う。これは<FSTREAM>ヘッダで定義されている。ファイルストリームはcoutや cinと似ており、例えば出力には<<演算子を使う。
例8-1のコードを試す際、ビルドにinput.cppを追加することを忘れるな。
例 8-1. 株価をファイルに書き込む
#include<fstream>#include<iostream>#include<vector>#include"input.h"voidwrite_to_file(conststd::vector<double>&prices,conststd::string&filename){std::ofstreamfile{filename};if(file){for(autoprice:prices){file<<price<<'\n';}}}intmain(){write_to_file ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access