ios::nocreate和ios::noreplace

本文详细解释了C++标准库中与文件读写相关的ios::nocreate和ios::noreplace标志位的功能与使用方法,并提供了如何在现代C++中模拟这两种行为的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

The ios::nocreate setting did not make it into the ISO 14882:1998 C++
     standard. Too platform specific.

     You can simulate that behavior with:

     fstream foo("foo.txt", ios_base::in);
     if(!fs) {
   // File does not exist.
   // Do not create one.
    }
    else {
    foo.close();
   foo.open("foo.txt", ios_base:ut);
}

ios::nocreate:打开一个以有的文件,如文件不存在,则打开失败,nocreate的意思是不建立新文件

ios::noreplace:如果文件不存在则建立新文件,如果文件以存在则操作失败,noplace的意思是不建立新文件

在新版本的C++系统I/O类库中不提供ios::nocreat和ios::noreplace

用ios_base::in|ios_base::on可做判断

"书山有路勤为径 ,学海无涯苦作舟"   出自我国唐代著名诗人、哲学家韩愈的治学名联。

人的一生这么短,还是做自己喜欢的事比较好.......比如 不学习C++     哈哈哈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值