它用於設定錯誤狀態標誌。 標誌的當前值被覆蓋:所有位被狀態中的那些位替換; 如果狀態為goodbit
(為零),則所有錯誤標誌被清除。
在呼叫此函式時,如果沒有流緩衝區與流相關聯,則會自動設定badbit
標誌(無論該段的值是否在引數狀態中傳遞)。
下面是ios::clear
函式的宣告。
void clear (iostate state = goodbit);
下面的例子中演示了ios::clear
函式的使用。
#include <iostream>
#include <fstream>
int main () {
char buffer [80];
std::fstream myfile;
myfile.open ("test.txt",std::fstream::in);
myfile << "test";
if (myfile.fail()) {
std::cout << "Error writing to test.txt/n";
myfile.clear();
}
myfile.getline (buffer,80);
std::cout << buffer << " successfully read from file./n";
return 0;
}