BOOST_AUTO_TEST_SUITE_END()行的异常错误

时间:2010-11-06 08:56:02

标签: c++ boost-test

我的老师加强测试有问题。 当我正在调试我的项目时,我在此行收到错误:

    BOOST_AUTO_TEST_SUITE_END()

例外情况如下:

homework2.exe中的

0x7521b727(KernelBase.dll):0xC0020001:字符串绑定无效。

我正在使用Visual Studio 2010终极版和Win7专业版(包含所有更新) 这个Bug非常烦人,因为我在抛出异常时会得到一个Zombie控制台窗口。

抱歉我的英语;)

编辑:我的测试代码

#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()

编辑:我发现了我的错... IDE Option / clr已打开,关闭它并且你没有错误:D

1 个答案:

答案 0 :(得分:0)

我改变了我的包含;我的老师告诉我问题出在我的二进制文件上。

当其他人遇到同样的问题这里是解决方案:

新守则:

#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()