[英]What happens inside when we write to a file without opening it?
例如,如果我寫入一個文件,該文件不在我的 << 給定要寫入的字符串所在的位置?
int main(int argc, char** argv) {
fstream my_file;
if (argc>1)
{
my_file.open("my_file.txt", ios::out);
cout << "File1 created successfully!"<<endl;
}
my_file << "Guru99";
my_file.close();
cout<<"Done"<<endl;
return 0; }
它會放在 memory 還是放在 dev/null 類型的區域?
如果您嘗試寫入與文件無關(未打開)的fstream
object,您的failbit
將被丟棄並設置故障位:
如果無法生成 output,則設置 failbit,如果在此流的異常掩碼中啟用了 failbit 異常,則拋出 ios_base::failure。
如https://en.cppreference.com/w/cpp/named_req/FormattedOutputFunction中所述。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.