程序不基于 Visual studio

Program not building on Visual studio

上面显示了我从 Microsoft Visual Studio
构建 main.cpp 时遇到的错误 main.cpp 文件

       #include <iostream>
    #include "catalan.h"
    using namespace std;
    int main()
    {
        int selection;
        int number;
       
        }
        return 0;
}

这是 catalan.h 文件:

#include "implementation.cpp"
int catalan(int n);
int fibonacci(int x);
void menu();

这是 implementation.cpp 文件

int catalan(int n)
{
    if (n <= 1)
        return 1;
    int result = 0;
   

    return result;
}
int fibonacci(int x)
{
    return 0;
}
void menu()
{
    std::cout << "1. Do Catalan numbers" << std::endl;
 
}

为了便于阅读,我从中删除了一些代码。同样的程序正在编译
和 运行 g++ 很好但是当我把它放在 Microsoft Visual Studio 它不编译。
可能是什么原因以及如何纠正它? 错误截图的图像可以在 -

不要像在 #include "implementation.cpp" 中那样包含 .cpp 文件。包含头文件并编译 .cpp 个文件。

当您删除 #include "implementation.cpp 后,如果 .cpp 文件当前依赖于您所做的 #include <iostream>,您可能需要将缺少的 #include 添加到 .cpp 文件中] 例如。

正在编译:

g++中,这意味着编译这个:

g++ main.cpp implementation.cpp -o program_name

在 Visual Studio 中,这意味着将缺少的 .cpp 文件添加到项目中。它应该是 main.cppimplementation.cpp.