C++报错积累

173 阅读1分钟
  • 没有可用的复制构造函数或复制构造函数声明为“explicit”
    A:构造函数的声明和定义中参数前加const
  • "没有找到重载的成员函数"
    A:由于上面有一处的声明定义不同报错,声明,定义保持一致
  • xthread库报错,"std::invoke”: 未找到匹配的重载函数"
    A:这个和使用线程对象有关,下面示出
// 声明式,注意此处的函数参数是void*  
void* ThreadPool::manager(void* arg)
// ! 生成的线程对象没为它绑定参数
std::thread thread_manager = std::move(std::thread(manager));

// ok
std::thread thread_manager = std::move(std::thread(manager, this));