我正在開發一個Windows的VC++ 2008程序,它執行fileIO,並且遇到了一個非常奇怪的問題。在我的#include指令我有ios not recognized
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <string>
,然後我有實際執行FILEIO的方法,但是當我嘗試打開這樣的文件:
std::ofstream Output;
Output.open("Output/log.txt", ios::out);
我的智能感知允許,和甚至有正確的自動完成,但我的編譯器引發的錯誤:
1>c:...\engine\gsp420maincore\gsp420maincore\messagequeue.cpp(141) : error C2653: 'ios' : is not a class or namespace name
1>c:...\engine\gsp420maincore\gsp420maincore\messagequeue.cpp(141) : error C2065: 'out' : undeclared identifier
當我讀到有關ofstream.open()就指出,要打開的文件是否是用於輸入,輸出,或兩者應該是SPECI田間,但是IOS應該會自動通過任何其他的iostream #include指令包括,當我插入這個問題沒有解決的:
#include <ios> // directive
編譯器有沒有投訴,當我刪除第二個說法,但我知道,我應該嘗試,並指定以防萬一我想從文件中讀入並寫入文件。我做錯什麼了嗎?
你的意思是'std :: ios'? – wilhelmtell 2012-01-30 05:44:14
是的,我確實需要說明。顯然是因爲這個文件是在使用namespace指令之前編譯的,所以我必須指定它駐留在std中 – gardian06 2012-01-30 05:48:46