La funzione API di Windows CopyFile
ha un argomento BOOL bFailIfExists
che consente di controllare se si desidera sovrascrivere o meno il file di destinazione, se esistente.come eseguire boost :: filesystem copy_file con sovrascrittura
La funzione boost::filesystem
copy_file
non ha questo argomento e avrà esito negativo se il file di destinazione esiste. C'è un modo elegante per usare la funzione boost_file e sovrascrivere il file di destinazione? O è meglio semplicemente utilizzare l'API di Windows? La mia attuale piattaforma di destinazione è Windows, ma preferisco usare STL e aumentare dove possibile per mantenere la mia piattaforma di codice indipendente.
Grazie.
Grazie anno. Non ero a conoscenza di questo. Sembra che questa opzione sia stata aggiunta a volte tra la versione 1.35 che stavo usando quando ho posto la domanda e la versione 1.41 che sto usando ora. Non riesco a trovare la modifica nella cronologia delle modifiche della libreria. Ma comunque, il problema è risolto. Non sono sicuro che ora dovrei accettare la tua risposta, forse ti chiederò su meta. –
Attenzione: sembra esserci un problema con questo terzo argomento nell'implementazione POSIX. Vedi risposta di Vitaly. –
@DanivanderMeer per il beneficio dei visitatori di questa pagina, [che bug è stato risolto anni fa] (https://svn.boost.org/trac/boost/ticket/4930). –