对样本void函数的未定义引用

时间:2016-03-04 19:00:48

标签: c++

我想了解与标题和其他.cpp(例如函数)的链接,所以我的问题是为什么我得到“未定义的'afis()引用。有示例,我想澄清一下。也很抱歉我的英文不好:D。

主要有:

#include <iostream>
#include "functions.h"

using namespace std;
int main()
{
    afis();
    return 0;
}

有一个名为function.cpp的函数:

#include <iostream>

using namespace std;

void afis(){
    cout <<"yehe";
}

还有标题:

#ifndef FUNCTIONS_H_INCLUDED
#define FUNCTIONS_H_INCLUDED

void afis();

#endif // FUNCTIONS_H_INCLUDED

1 个答案:

答案 0 :(得分:2)

虽然C ++编译器会自动“引入”引用的头文件,但它不能对实际的.cpp代码文件执行此操作。

而不是打电话

CXX/clang++/g++ main.cpp -o hello

您需要手动包含所有相关的代码文件:

CXX/clang++/g++ main.cpp functions.cpp -o hello