【发布时间】:2021-05-28 23:17:54
【问题描述】:
我正在 Clion 2018.3 中设置一个 C++17 + boost 1.76.0 项目,使用以下最少的代码:
#include <boost/asio/ip/tcp.hpp>
int main(int argc, char **argv)
{
auto const address = boost::asio::ip::make_address(argv[1]);
return 0;
}
在我的 CMakeLists.txt 中,我已经正确设置了 C++ 版本:
add_definitions(-std=c++17)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
项目编译并运行良好。但是 Clion 在 make_address 行显示以下错误:
命名空间“boost::asio::ip”中没有名为“make_address”的成员
CTRL-hover 方法名正确显示文档,CTRL-click 正确打开头文件。
我们是否应该做其他事情来告诉 Clion 我们正在使用哪个 C++ 版本?
【问题讨论】: