我是一名初學者,我試圖獲得這個C++任務的訣竅。我應該讀取一個文件並將其放入一個向量中,對其進行排序,然後在3個獨立的非成員函數中將其輸出到一個新文件中,但由於某些原因,它們將無法運行。從來沒有新的文件輸出,我甚至把完成的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'應該是第一行代碼。爲什麼你爲這個小代碼使用預編譯頭文件讓我感到困惑,但是如果內存能夠運行,它並不在正確的位置。 – chris
當您用調試器單步執行語句時,您發現了哪些信息? –