在C++中进行多文件编译时,"未声明函数"

ret*_*n 0 0 c++ reusability

我的源文件如下所示

//functions.h
#ifdef FUNCTIONS
#define FUNCTIONS

bool isPrime(int num);

#endif

//function.cpp
include "functions.h"
bool isPrime(int num) {...}

//main.cpp
#include "functions.h"
#include <iostream>
int main()
{
    std::cout << isPrime(2);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我用g ++ -o main main.cpp functions.cpp编译它们

它给了我错误消息"isPrime"未在此范围内声明.

Mar*_*som 5

你的问题很简单我起初没有看到它.而不是#ifdef FUNCTIONS你需要#ifndef FUNCTIONS.请注意n.