Est-ce que quelqu'un a une copie du code source de la classe d'exception? Je voudrais étudier son implémentation. Merci
edit: Je cherche std :: exception
Je suis intéressé parce que je voudrais savoir comment le constructeur prend un char * et initialise est variable membre, et comment le constructeur de copie, opérateur d'affectation est fait dans cette classe.C++ code source de la classe d'exception
Répondre
Il n'y a pas de "classe d'exception" de base en C++: vous pouvez lancer à peu près n'importe quoi, même un int
(throw 42;
est tout à fait valide).
Si vous parlez de la classe std::exception
, il y a très peu dedans: aucune de ses fonctions membres n'a besoin de faire quoi que ce soit (what()
n'a qu'à retourner un pointeur vers une chaîne C). Seraient une mise en œuvre tout à fait correct:
struct exception {
exception() throw() { }
exception(const exception&) throw() { }
exception& operator=(const exception&) throw() { }
virtual ~exception() throw() { }
virtual const char* what() const throw() { return "o noez! an exception!"; }
};
Les classes d'exception dans la bibliothèque standard qui vous permettent de spécifier votre propre chaîne (par exemple, std::runtime_error
) utilisent std::string
. Ils ne devraient pas avoir à faire de gestion manuelle de la mémoire car ils peuvent utiliser std::string
. (Techniquement, une implémentation ne doit pas utiliser std::string
en interne, mais elle doit en prendre une dans son constructeur.)
- 1. Code source de la bibliothèque C
- 2. C# .net code source
- 3. C++ code source vectoriel
- 4. Test C/C++ code source
- 5. Récupérer le code source de la méthode à partir du fichier de code source de la classe
- 6. objectif-c code source formateur
- 7. C code source à Dll
- 8. OpenGL DevIL code source C++
- 9. objets Sérialisation avec modification du code source de la classe
- 10. Comment voir le code source de la classe RouteValueDictionary
- 11. C++ code source à exe
- 12. format moche C# code source
- 13. Code source Android, trace Java, classe abstraite
- 14. Inverser le code source C de l'assemblage
- 15. Exemples de code source SharpSvn et C#
- 16. Bon navigateur de code source pour C
- 17. Code source en tant qu'objets en C#
- 18. Conversion de code source c en dll
- 19. Partage du code source de la classe C# entre plusieurs projets
- 20. Enveloppe OpenSSL C# .NET, source de code
- 21. Où télécharger la langue de code source libre de C?
- 22. appel « C++ » fonction membre de la classe de « C » Code
- 23. Obfuscating code source lors de la publication (C#)
- 24. Erreur lors de la compilation d'un code source C
- 25. mal à la compilation du code source
- 26. Navigateur de code source
- 27. Dépendances de code source
- 28. Grammaire C dans le code source GCC
- 29. Recherche du code source C pour snprintf()
- 30. Code source du validateur xml en C