【问题标题】:Tuple not recognized by ClionClion 无法识别元组
【发布时间】:2016-05-10 17:24:05
【问题描述】:

CLion 似乎无法识别 c++ tuples,尽管我可以从终端构建和运行我的程序。

在尝试构建时,我只得到“构建失败”,而 tuple 的所有成员都被突出显示并且我得到“无法解析命名空间成员元组”(与 tiemake_tuple 相同)。

这是我的简单测试:

#include<iostream>
#include<tuple>
std::tuple<int,int> testTuple();

int main(int argc, char** argv) {
    int a, b;
    std::tie(a,b) = testTuple();
    std::cout<<a<<" "<<b;
    return 0;
}
std::tuple<int,int> testTuple()
{
    return std::make_tuple(0,1);
}

我的CMakeLists.txt

cmake_minimum_required(VERSION 2.8)
project(testTuple)
SET(CMAKE_CXX_COMPILER, /usr/bin/g++-4.8)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(CMAKE_BUILD_TYPE Debug)

set(SOURCE_FILES "src/main.cpp")
add_executable(simplification ${SOURCE_FILES})

【问题讨论】:

  • 你不明白,是吗? minimal reproducible example 请像往常一样,包括逐字错误消息。顺便说一句,clion 标签在这里可能无关紧要。
  • @πάνταῥεῖ 这仅与clion 有关 - 我认为与cmake 没有太大关系。虽然 CLion 确实依赖于 cmake,但它不是与 cmake 相关的问题。我在终端中的同一个文件上运行 cmake,它确实有效。我提供了与失败相关的更多信息,尽管我找不到更多相关信息。
  • @πάνταῥεῖ 话虽如此,我认为这是最小的:想不出更简单的测试程序。完整:这是所有代码,以及我拥有的所有信息。检查员将其突出显示为错误,构建在 clion 中失败但在命令行中工作,并且构建时的唯一消息是“构建失败”。可验证:启动 CLion,复制粘贴代码和 CMakeLists.txt 即可进行测试
  • @SteveLorimer 我刚刚将 Clion 更新到 2016.1.2,问题已经为我解决了
  • @BujancaMihai 不错!

标签: c++ cmake clion


【解决方案1】:

为了实现诸如代码竞争、跳转到定义等功能CLion有它自己的c++解析器。 因此,如果您的代码已编译,但 CLion 显示某种错误, 去把 bug 报告给 jetbrain (https://youtrack.jetbrains.com/issues/CPP)

【讨论】:

  • 在将其作为错误提交之前,我试图先确定是否是我做错了(也许 CLion 中有一些我不知道的配置步骤?)
  • @BujancaMihai CLionCMakeLists.txt 获取有关如何编译项目的信息。哪个部分失败并不重要 - 解析 cmake 文件,或者它是内部解析器,两个部分都有一个根 - CLion 中的错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多