J'ai seulement 1 ligne de code, et c'est:Pourquoi ai-je une erreur de saturation de tampon avec cette ligne de code?
pcrecpp::RE re("abc");
dans une fonction OnBnClickedButtonGo()
. Et cette fonction échoue en mode Release, mais cela fonctionne correctement en mode débogage.
(J'utilise Visual Studio 8 sous Windows XP.)
Le message d'erreur est:
A buffer overrun has occurred in testregex.exe which has corrupted the program's
internal state. Press Break to debug the program or Continue to terminate
the program.
For more details please see Help topic 'How to debug Buffer Overrun Issues'.
Je pense qu'il est son destructor, qui est invisible et sous-entendus ... mais je ne Je ne sais pas vraiment. PS: Je suis en liaison statique avec la version 7.8 de PCRE lib. PS2: Pas très pertinent, mais peut aider certaines personnes qui ont des problèmes de liaison à la bibliothèque PCRE (cela m'a pris des heures pour le trier): inclure la ligne #define PCRE_STATIC
.
Avez-vous construit la bibliothèque, ou était-ce une librairie en conserve? De toute façon, a-t-il été compilé avec le même compilateur? Sinon, je vais essayer de construire la lib avec votre compilateur et voir si cela aide. –