C++ 头文件(基础)

标签 c++ header codeblocks

我尝试使用头文件和源文件,但遇到了问题。因此,我对我正在尝试做的事情做了一个简化版本,我在 CodeBlocks 中遇到了同样的错误(undefined reference to add(double, double) in main.cpp ).

add.cpp中:

double add (double x, double y)
{
    return x+y;
}

add.h 中:

#ifndef ADD_H_INCLUDED
#define ADD_H_INCLUDED

double add(double, double);

#endif

main.cpp 中:

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

int main()
{
    std::cout<<add(3,4)<<std::endl;
    return 0;
}

我做错了什么?请注意,当我将 #include "add.cpp" 添加到 add.h 时,一切正常。但根据我正在学习的教科书,不需要这样做。

最佳答案

我必须手动将文件指定为构建目标,因为它们不是默认构建的。在 CodeBlocks 中,这是通过右键单击项目,转到属性 > 构建目标并检查调试和发布中的所有文件来完成的。

关于C++ 头文件(基础),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28272986/

相关文章:

c++ - 循环 C++ header 包括

编译器警告,已修复,但想确保我理解

C,代码 :Block, 另一个 sigsegv,列出

c - do while 语句只执行两次 code::block 和 dev c++

c++ - mktime() 返回的意外值

html - header 在 IE 7-8 中乱七八糟

c++ - 从 64 位整数中提取 32 位

header - NiFi : Remove fixed number of header lines from file

c++ - C++ 获取一天开始时间戳

c++ - CUDA 语法错误 '<'