2010-11-06 15 views
1

J'ai un problème avec le boost-test de mon professeur. Quand je débogage mon projet, je reçois une erreur sur cette ligne:Erreur d'exception sur la ligne BOOST_AUTO_TEST_SUITE_END()

BOOST_AUTO_TEST_SUITE_END() 

L'exception est la suivante:

0x7521b727 (KernelBase.dll) en homework2.exe: 0xC0020001: La chaîne liaison est invalide. J'utilise Visual Studio 2010 ultimate et Win7 Professional (avec toutes les mises à jour) Ce bug est très ennuyeux, car je reçois une console de Zombie Window lorsque l'exception est levée.

désolé pour mon anglais;)

Edit: Mon code de test

#define BOOST_TEST_MAIN 
#define BOOST_TEST_DYN_LINK 
#include <boost/test/unit_test.hpp> 
#include <string> 

BOOST_AUTO_TEST_SUITE(easy_stringtest) 

BOOST_AUTO_TEST_CASE(length_test) 
{ 
    std::string s("xyz"); 
    BOOST_CHECK(s.length() ==3); 
} 

BOOST_AUTO_TEST_CASE(same) 
{ 
    std::string s("abc"); 

    BOOST_CHECK(s == "abc"); 
} 


BOOST_AUTO_TEST_SUITE_END() 

Edit: Je Fould ma faute ... L'IDE Option/clr a été activé, désactivez-le et vous n'aura pas d'erreur: D

+0

Une partie du code peut-être? –

+0

Téléchargé Fichier à pastebin – demonking

+0

Parlez à votre professeur, votre code n'a rien à voir avec l'exception. –

Répondre

0

J'ai changé mon include; mon professeur m'a dit que le problème était avec mes binaires.

Quand quelqu'un d'autre a le même problème voici la solution:

Code:

#define BOOST_TEST_MAIN 
#include <boost/test/included/unit_test.hpp> 
#include <string> 

BOOST_AUTO_TEST_SUITE(easy_stringtest) 

BOOST_AUTO_TEST_CASE(length_test) 
{ 
    std::string s("xyz"); 
    BOOST_CHECK(s.length() ==3); 
} 

BOOST_AUTO_TEST_CASE(same) 
{ 
    std::string s("abc"); 

    BOOST_CHECK(s == "abc"); 
} 


BOOST_AUTO_TEST_SUITE_END()