所以我试图从文本文件中读取包含垄断板的文本文件,出于某种原因,我不能通过我通常的方式来做,任何人都可以在这里看到我所做的事情。我不见了?
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <string>
using namespace std;
class properties
{
private:
ifstream infile("Monopoly.txt");
string line;
while (getline(infile, line))
{
istringstream iss(line);
int i, j;
if (!(iss >> i >> j))
{
break;
}
}
};
答案 0 :(得分:0)
我不能通过我通常的方式做到这一点,任何人都可以在这里看到我错过的东西吗?
您在代码中犯下的错误是您拥有包含代码的类,而不是任何已定义方法的一部分。一个类,它可以包含变量和/或函数的字段,但它不能直接在其中包含代码,您已经完成了。
您需要从类中获取代码并将其放在类中声明的 public 函数中。然后在main()
函数中,创建该类的对象,并在main()
中将该函数作为该对象的字段调用。这应该解决问题。
编辑:顺便说一句,除非您将文件存储在编译器存储所有文件的默认位置,否则应指定文件所在的目录。像这样:
ifstream infile("C:\\...\\Monopoly.txt"); add the directory just in front of the file name
允许您使用您选择的目录,而不是依赖于编译器设置的默认目录。