环境:codeblocks 语言:C++ 在执行:throw new exception("queue is empty.");时 遇到问题:error: no matching function for call to 'std::exception:exception(const char[16])' 解决办法:修改为 std::logic_error e("xxx."); throw std::exception(e);…
Error no matching function for call to 'std::exception::exception(const char [15])' Error 'logic_error' was not declared in this scope 错误原因 C++在使用VS 编译时抛出异常可以用下列语句: throw std::exception("XXX"); 但使用Dev-C++ (GCC) 编译时,会报以下错误: Error no matching func…
错误记录:QT中使用 no matching function for call to 'std::basic_ifstream<char>::basic_ifstream(QString&, const openmode&)' ifstream i_f_stream(fileName,ifstream::binary); ^ 没有匹配对. 看别人的:error: no matching function for call to 'std::basic_ifstream<…
前言 最近任务多.工期紧,没有时间更新博客,就水一期吧.虽然是水,也不能太失水准,刚好最近工作中遇到一个 boost::bind 的问题,花费了半天时间来定位解决,就说说它吧. 问题背景 项目中使用了 boost 的 ios_service,任务都是 post 到对应线程去执行,这样可以避免复杂的多线程同步问题,有点类似早年间 COM 的单线程套间模型.不过这就需要将接口通过 bind 封装为函数对象传递给 ios_service,之前的代码都工作正常,但我新增了一个接口后,却怎么也编译不过,报…
How to convert a std::string to const char* or char*? 1. If you just want to pass a std::string to a function that needs const char* you can use std::string str; const char * c = str.c_str(); If you want to get a writable copy, like char *, you can d…
std::string stringf(const char* format, ...){ va_list arg_list; va_start(arg_list, format); // SUSv2 version doesn't work for buf NULL/size 0, so try printing // into a small buffer that avoids the double-rendering and alloca path too... char short_b…
connect(ui->spinBox_luminosity,&QSpinBox::valueChanged, ui->horizontalSlider_luminosity, &QSlider::setValue); 执行上面语句,提示如下错误.connect 采用的是 Qt 5 的语法,问题原因是函数 valueChanged 有两个形态:QSpinBox::valueChanged(int) 和 QSpinBox::valueChanged(QString),编译器不知道…
使用string中的assign赋值函数报错,代码为: text0.assign(line,i+); 其中text0与line都为string类型 最后发现assign函数的原型为 string &assign(const char *s,int n); 将代码改为以下即可 text0.assign(line.c_str(),i+); 附  assign函数 string &operator=(const string &s);//把字符串s赋给当前字符串 string &…
环境:Qt5.3 参考书是:C++ GUI Qt4编程 问题描述: 按照书中的例子2-2做,编译时遇到的问题,从字面意思看是没有匹配的函数可用,UI::GotoCellDialog类是自动生成的,所以打开它的源码文件发现,声明的函数setupUi参数是QMainWindow *,所以传入QDialog当然出错了,修改一下就可以了. 疑惑: Qt里面经常遇到这样的问题,书上写的,照着去做都能出错,可能是因为版本问题吧,但是这样做也太坑了,为什么不向下兼容呢?不理解...…
1.对于cs.h找不到的情况 1)编译的时候一定要把csparse在EXTERNAL文件中,编译进去. 2)修改CMakeLists.txt文件中的include_directories中的${CPARSE_INCLUDE_DIR},在DIR后面不能加上S. 2.编译报错,如下 error: no matching function for call to ‘g2o::BlockSolver<g2o::BlockSolverTraits<6, 3> >::BlockSolver(s…