Boost exception lors de l'exécution
L'aide de ce code:
#include <fstream>
#include <boost/archive/text_oarchive.hpp>
using namespace std;
int main()
{
std::ofstream ofs("c:\test");
boost::archive::text_oarchive oa(ofs);
}
J'obtiens une exception non gérée à l'exécution lors de l'exécution de la boost archive ligne:
boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::archive::archive_exception> >
OriginalL'auteur Dan | 2009-02-16
Vous devez vous connecter pour publier un commentaire.
La ligne suivante est dans l'erreur:
Le compilateur aurait craché un avertissement (au moins) si votre fichier a été appelé
jest
; mais'\t'
-- être la fuite pour l'insertion d'un onglet, votre erreur passe interceptée. En bref, le fichier ne sera pas créé. Vous pouvez le tester avec:Maintenant, puisque le fichier n'a pas été créé, vous ne disposez pas d'un itérateur de passer à
boost::archive::text_oarchive
qui lève l'exception.Essayez ceci:
Espérons que cette aide!
PS: UNE finale nit je ne pouvais pas m'empêcher de faire -- si vous allez utiliser
puis
est assez bon. Bien sûr, il n'est pas une erreur de qualifier
ofstream
, mais il ne serait pas le meilleur style de codage. Mais alors, vous connaissez à l'aide deusing namespace
est mauvais, n'est-ce pas?PPS:je vous Remercie --
sharptooth
pour me rappeler que\t
vous obtient un onglet!Bang! Grâce acéré.
Vous pourriez tout aussi bien utiliser c:/test - la barre oblique fonctionne sur les systèmes Windows et Unix en tant que séparateur de chemin et n'a pas besoin d'être cité.
Assurez-vous. Très peu de gens utilisent bien sur Windows.
Merci, j'ai très vite compris, après la capture de l'exception (veuillez excuser mon posant cette question, il avait été une longue journée), mais néanmoins il y a quelques conseils utiles là, donc merci. Je suis curieux de savoir si, pourquoi en utilisant un espace de mauvais?
OriginalL'auteur dirkgently
Vous avez besoin pour attraper l'exception et ensuite examiner son exception_code pour voir ce que la cause est.
OriginalL'auteur paxdiablo