c++11在macOS下多线程问题:【no matching constructor for initialization of ‘std::thread‘】

c++11在macOS下多线程问题:【no matching constructor for initialization of 'std::thread'】

今天在macOS下写多线程时报错没有匹配的初始化函数
原因:MacOS的g++使用clang,默认不支持C++11多线程。
解决办法:
在cmake下指定编译标准

# 设置指定的C++编译器版本是必须的,如果不设置,或者为OFF,则指定版本不可用时,会使用上一版本。
set(CMAKE_CXX_STANDARD_REQUIRED ON)

# 指定为C++11 版本
set(CMAKE_CXX_STANDARD 11)

你可能感兴趣的:(遇到的异常,c++,macos,开发语言)