std::basic_ofstream<CharT,Traits>:: basic_ofstream
|
basic_ofstream
(
)
;
|
(1) | |
|
explicit
basic_ofstream
(
const
char
*
filename,
std::
ios_base
::
openmode
mode
|
(2) | |
|
explicit
basic_ofstream
(
const
std
::
filesystem
::
path
::
value_type
*
filename,
std::
ios_base
::
openmode
mode
|
(3) | (depuis C++17) |
|
explicit
basic_ofstream
(
const
std::
string
&
filename,
std::
ios_base
::
openmode
mode
|
(4) | (depuis C++11) |
|
template
<
class
FsPath
>
explicit
basic_ofstream
(
const
FsPath
&
filename,
|
(5) | (depuis C++17) |
|
basic_ofstream
(
basic_ofstream
&&
other
)
;
|
(6) | (depuis C++11) |
|
basic_ofstream
(
const
basic_ofstream
&
rhs
)
=
delete
;
|
(7) | (depuis C++11) |
Construit un nouveau flux de fichier.
open()
renvoie un pointeur nul, positionne
setstate
(
failbit
)
.
La surcharge
(3)
n'est fournie que si
std
::
filesystem
::
path
::
value_type
n'est pas
char
.
(depuis C++17)
FsPath
est
std::filesystem::path
.
(depuis C++17)
Notez que malgré le mode par défaut étant
out
, les effets sont identiques aux effets de
out | trunc
comme décrit dans
std::filebuf::open
rdbuf()
), puis construit par déplacement le membre
std::basic_filebuf
, puis appelle
this
-
>
set_rdbuf
(
)
pour installer le nouveau
basic_filebuf
comme pointeur
rdbuf()
dans la classe de base.
Table des matières |
Paramètres
| filename | - | le nom du fichier à ouvrir | ||||||||||||||||
| mode | - |
spécifie le mode d'ouverture du flux. Les constantes suivantes et leur combinaison par OU binaire peuvent être utilisées :
|
||||||||||||||||
| other | - | un autre flux de fichier à utiliser comme source |
Exemple
#include <fstream> #include <string> #include <utility> int main() { std::ofstream f0; std::ofstream f1("test.bin", std::ios::binary); std::string name = "example.txt"; std::ofstream f2(name); std::ofstream f3(std::move(f1)); }
Rapports de défauts
Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.
| DR | Appliqué à | Comportement publié | Comportement corrigé |
|---|---|---|---|
| LWG 3430 | C++17 | std::filesystem::path surcharge menait à des conversions indésirables | évité en le rendant template |
Voir aussi
|
ouvre un fichier et l'associe au flux
(fonction membre publique) |
|
|
ouvre un fichier et le configure comme séquence de caractères associée
(fonction membre publique de
std::basic_filebuf<CharT,Traits>
)
|
|
remplace le
rdbuf
sans effacer son état d'erreur
(fonction membre protégée) |
|
|
construit l'objet
(fonction membre publique de
std::basic_ostream<CharT,Traits>
)
|