'ios':不是类或命名空间名称

时间:2012-09-22 22:42:00

标签: c++ file iostream

我正在尝试使用上面的代码将矩阵写入文件。但我收到以下错误: 'ios':不是类或命名空间名称。我的代码:

std::ofstream myfile;
myfile.open ("C:/Users/zenitis/Desktop/bots/Nova/data/ownStatus.txt", ios::out | ios::app);               

for (int i = 0; i< 21; i++){
    myfile << featureMatrix[i] << "          ";
}
myfile << "\n";
myfile.close();

关于这个问题的任何想法??

1 个答案:

答案 0 :(得分:9)

iosstd的成员。也就是说,您希望使用以下方法之一来引用它:

using namespace std; // bad
using std::ios;      // slightly better

int main() {
    std::ofstream myFile("name", std::ios::app); // best
}

顺便说一句,您可以直接在构造函数中open() std::ofstream。此外,对于std::ofstream,标志std::ios_base::out(开放标志实际上在std::ios的基类std::ios_base中定义)会自动添加。