lambda中的boost :: trim导致编译器崩溃

时间:2012-06-01 20:32:03

标签: c++ boost lambda

我遇到lambda表达式问题导致编译器崩溃(VC10)。

当我在字符串上使用boost :: trim时,它似乎只会崩溃。有没有合理的解释为什么会发生这种情况以及解决这种行为的方法?或者我是否必须在lambda内手动修剪?

这是导致崩溃的示例代码:

CreateBtn.MouseUpEvent += ([this](const input::MouseEventArgs& args)
{
    Res.BlendBaseName = BlendTb.GetText(); 
    //boost::trim(Res.BlendBaseName); this line causes compiler internal error
});

MouseUpEvent是我的类的对象,它只包含std :: functions的向量,如果这对任何方式都有帮助的话。

从lambda体内调用其他函数,但boost :: trim失败。在我看来,这是一个编译器错误。有什么想法吗?

编辑:这是输出窗口中的消息:

1>d:\development\lame\lame_framework_test\editormode.h(243): fatal error C1001: An internal error has occurred in the compiler.
1>  (compiler file 'msc1.cpp', line 1420)

0 个答案:

没有答案