clion не может разрешить стандартные типы - PullRequest
0 голосов
/ 07 февраля 2020

Я искал несколько похожих вопросов, например Clion не может разрешить c ++ 11 std типов , и сделал так, как просил, но Clion все еще не распознал переменные std и попросил меня используйте std :: string вместо string. Эту проблему можно решить, добавив using namespace std вверху файла, но мне не нравится добавлять этот код в каждый файл, так как я могу решить эту проблему? это мой CMakeLists.txt

cmake_minimum_required(VERSION 3.10)
project(myapp)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
include_directories(".")
set(HeadFileDirList "")
file(GLOB SRCH_LIST comm2/*.h comm2/*/*.h comm2/*/*/*.h comm2/*/*/*/*.h comm2/*/*/*/*/*.h mmcomm/*.h mmcomm/*/*.h mmcomm/*/*/*.h mmcomm/*/*/*/*.h mmcomm/*/*/*/*/*.h)
foreach(src ${SRCH_LIST})
    string(REGEX REPLACE "[^/\\\\]+$" "" HeadFileDir ${src})
    message(STATUS ${HeadFileDir})
    include_directories(${HeadFileDir})
endforeach()
add_executable(myapp main.cpp)

, а это ошибка Clion ошибка clion

1 Ответ

0 голосов
/ 07 февраля 2020
Типы

std находятся в пространстве имен std и, следовательно, должны быть либо квалифицированы с использованием std::, либо с помощью оператора using: using namespace std;. В вашем случае вы бы заменили string на std::string, а также на другие имена в std, такие как std::cout.

...