2 つの関数を使用して出力ファイルにデータを出力する必要があるプロジェクトがあります。1 つの関数はベクトルの値を出力し、もう 1 つの関数は配列の値を出力します。ただし、メインで呼び出される 2 番目の関数は、最初の関数が出力したものを上書きします。最初の関数でファイルを開き、2 番目の関数でファイルを閉じようとしましたが、うまくいきませんでした。どうやら、関数から関数へと移動すると、書き込み位置がファイルの先頭にリセットされます。ただし、seekp(); を使用できません。クラスで実際にカバーしていないためです。これをどのように行うべきかについての洞察はありますか?
void writeToFile(vector<int> vec, int count, int average)
{
ofstream outFile;
outFile.open("TopicFout.txt");
// Prints all values of the vector into TopicFout.txt
outFile << "The values read are:" << endl;
for (int number = 0; number < count; number++)
outFile << vec[number] << " ";
outFile << endl << endl << "Average of values is " << average;
}
void writeToFile(int arr[], int count, int median, int mode, int countMode)
{
ofstream outFile;
// Prints all values of the array into TopicFout.txt
outFile << "The sorted result is:" << endl;
for (int number = 0; number < count; number++)
outFile << arr[number] << " ";
outFile << endl << endl << "The median of values is " << median << endl << endl;
outFile << "The mode of values is " << mode << " which occurs " << countMode << " times." << endl << endl;
outFile.close();
}