【发布时间】:2014-07-03 04:51:39
【问题描述】:
我是一个初学者,我正在尝试掌握这个 C++ 作业的窍门。我应该读取一个文件并将其放入向量中,对其进行排序,然后在 3 个单独的非成员函数中将其输出到一个新文件中,但由于某种原因它们不会运行。从来没有输出一个新文件,我什至把 done cout 放在那里来测试函数是否正在运行,但我每次都什么也没得到。如果我能得到一些帮助,将不胜感激,谢谢!
#include <iostream>
#include <fstream>
#include <vector>
#include <string>
#include <algorithm>
#include "stdafx.h"
using namespace std;
void readtoVector(vector<string>& weblog)
{
string line;
fstream myFile;
myFile.open("weblog.txt");
if (myFile.fail()){
cerr << "File not available" << endl;
}
if (myFile.is_open()){
for (line; getline(myFile, line);){
weblog.push_back(line);
}
myFile.close();
}
}
void sortVector(vector<string>& weblog)
{
sort(weblog.begin(), weblog.end());
}
void writeVector(const vector<string>& weblog)
{
ofstream myFile;
myFile.open("newWeblog.txt");
for (int i = 0; i > weblog.size; ++i){
myFile << weblog[i] << endl;
}
myFile.close();
cout << "done";
}
int main()
{
vector<string> weblog;
readtoVector(weblog);
sortVector(weblog);
writeVector(weblog);
system("pause");
return 0;
}
编辑:修复 readtoVector 中的引用问题
【问题讨论】:
-
我记得,包含
stdafx.h应该是第一行代码。为什么你对这个小代码使用预编译的头文件让我感到困惑,但如果没有记忆,它就不在正确的地方。 -
当您使用调试器单步执行语句时,您发现了什么信息?
标签: c++ function input vector output