这是又一次调试模式运行下报的错: Invalid parameter passed to C runtime function(C++) 百度知道上有解释:是引用了空或者野指针,之所以会有空指针或者野指针,是因为你在另外一个线程把这个指针置空或者释放了,遇到这种情况你需要对这个指针做加锁保护,不然没法解决问题。
这是又一次调试模式运行下报的错:不截图了,看红色的地方 void QMYSQLResult::cleanup() { Q_D(QMYSQLResult); if (d->result) mysql_free_result(d->result); // must iterate trough leftover result sets from multi-selects or stored procedures // if this isn't done subsequent queries will fail with "Commands out of sync" #if MYSQL_VERSION_ID >= 40100 while (driver() && d->drv_d_func()->mysql && mysql_next_result(d->drv_d_func()->mysql) == 0) { MYSQL_RES *res = mysql_store_result(d->drv_d_func()->mysql); if (res) mysql_free_result(res); //调试器箭头指向的位置。 } #endif 更多的时候调试没有跳到什么地方,感觉每次调试,问题未必一样。不过程序还是照样运行呢,只是弹出报警框,点击确认,程序退出 估计是多线程环境下,内存出了什么问题,但是线程还是要用的,不然性能上跟不上,计算机初级学者,还是希望大家多多帮忙!。真不知道程序哪里写的有bug。