【发布时间】:2018-07-17 15:09:26
【问题描述】:
我正在学习 C++,我正在使用 JetBrains CLion C++ IDE。我只是拼凑一个快速测试。
我有一个库项目,它有一个 Welcome 类,其中一种方法。下面是 Welcome.h 标头
class Welcome
{
public:
void sayHello(string firstName, string lastName);
};
Welcome.cpp 文件
void Welcome::sayHello(string firstName, string lastName)
{
cout << "Hello " << firstName << " " << lastName << endl;
}
在我的测试应用中,CMakeList.txt 中有以下内容
cmake_minimum_required(VERSION 3.6)
project(TestApp)
include_directories(includes C:\\Users\\Chris\\ClionProjects\\MyLib\\includes)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(SOURCE_FILES main.cpp TestClass.cpp)
add_executable(TestApp ${SOURCE_FILES})
target_link_libraries(TestApp C:\\Users\\Chris\\Desktop\\MyLib.a)
在 main.cpp 我有以下内容
#include <iostream>
#include "TestClass.h"
#include "Welcome.h"
int main() {
TestClass testClass;
testClass.helloWorld();
Welcome welcome;
welcome.sayHello("First", "Last");
return 0;
}
CLion 很高兴找到 Welcome.h
CLion成功编译运行项目,在控制台输出Hello First Last
但即使它运行了,并且 CLion 成功运行它,IDE 仍以红色显示 Welcome,当鼠标悬停在它上面时是 Can't resolve type 'Welcome'
这怎么会发生,我是否遗漏了什么或者这是 CLion 中的错误?我假设它似乎是一个非常简单的错误,并且我使用了 JetBrains 的其他 IDE,例如 PHPStorm 和 Android Studio,它们非常好。
【问题讨论】: