Microsoft visual studio C 运行时库 在 xx.exe中检测到一个错误

之前多次出现这个问题,后来解决之后再出现就忘了怎么弄了,这次记录一下。

我这几次出现这种错误都是因为在Qt中将QString转const char* 时出现的。我的做法是有一个函数ToString()转为std::string

1 std::string MyProcessObject::ToString(QString strRaw)
2 {
3     return std::string((const char *)strRaw.toLocal8Bit());
4 }
ToString()

这么做是因为有时候会有中文路径问题。

然后每次在需要传入const char* 时我都是 ToString(QString).c_str(),这样直接传参就会出现错误。解决方法是:

string str=ToString(QString);

之后传入 str.c_str()就可以了,具体原因还不清楚。

posted @ 2016-05-27 20:21  gisk  阅读(2406)  评论(0编辑  收藏  举报
这是微黔的博客