用c ++创建头文件

时间:2010-08-26 07:51:54

标签: c++

我有以下问题:c ++是否有可能使用以下规则创建头文件。我们来看标题

#include "sum.h"

在sum.h中,我将声明函数或过程,然后在.cpp文件中使用它?

1 个答案:

答案 0 :(得分:5)

据我所知,你想在头文件中声明函数,然后在某处包含头文件并使用它。这是标头的正常使用。 (您应get a book解释这一点,因为在线报废信息不会为您提供非常好的知识库。)

你可以通过两种方式解决这个问题。声明标题中的函数,然后在某个翻译单元中定义它们并与该翻译单元链接:

// sum.h
int do_sum(int x, int y); // declare

// sum.cpp
#include "sum.h" // get declarations (strictly not needed)

int do_sum(int x, int y) // define
{
    return x + y;
}

另一种方法是使用inline来避免单一定义规则(ODR)并在标题中定义函数:

inline int do_sum(int x, int y) // define
{
    return x + y;
}

如果没有inline,则会因为有多个函数定义而出错。