J'ai un problème avec boost: program_optionsdébordement de tampon avec boost :: program_options
ce programme simple, copie-collé de la documentation booste:
#include <boost/program_options.hpp>
int main(int argc, char** argv)
{
namespace po = boost::program_options;
po::options_description desc("Allowed options");
desc.add_options()
("help", "produce help message")
("compression", po::value<int>(), "set compression level")
;
return 0;
}
échoue avec un débordement de mémoire tampon.
J'ai activé le « tampon interrupteur de sécurité », et quand je le lance-je obtenir une « exception inconnue (0xc0000409) » quand je fais un pas sur la ligne desc.add_options()...
J'utilise Visual Studio 2005 et de stimuler 1.43.0 . Par ailleurs, il fonctionne si je désactive l'interrupteur mais je ne me sens pas à l'aise de le faire ... à moins qu'il soit possible de le désactiver localement.
Alors avez-vous une solution à ce problème?
EDIT Je trouve le problème je liez contre libboost_program_options-vc80-mt.lib qui n'a pas été la bonne bibliothèque.
Pouvez-vous ajouter quelle version de boost que vous utilisez? –
Je l'ai ajouté. C'est la version 1.43.0 –
Vous n'avez pas besoin de lier manuellement dans VS. Boost utilise les directives pragma pour lier. –