-6

我正在学习 C++,但找不到以下问题的答案:

我有一个公式,可以根据用户输入计算两个数字的结果​​。

  • 包含此公式的头文件(“.h”)应该如何?
  • 如何从源代码(“.cpp”)中获取公式?
  • 如何将结果传递给源代码(“.cpp”)?

对于你们这些老前辈来说,这不是一个话题。我在哪里可以找到关于 C++ 的好教程?

问候,迪诺

4

2 回答 2

2

最好的教程可以在书中找到。有很多关于 SO 的主题以及好书推荐。

在 C++ 中,独立函数应该分组在命名空间中或作为static类成员(但前提是它们在逻辑上连接到类)。

对于您的情况,我会选择namespace. 尽管如此,还是有 3 种可能性,其中 2 种是可取的:

1)在头文件中声明函数并在源文件中定义它:

//formulas.h
#ifndef FORMULAS_H
#define FORMULAS_H
namespace Formulas
{
   int myFormula(int,int);
};
#endif

预处理器指令包括警卫(你可以用谷歌搜索)。在此之后,您在源文件中定义它:

//formulas.cpp

#include "formulas.h"
namespace Formulas
{
    int myFormula(int, int)
    {
       //....
       return 42;
    }
}

2)在头文件中声明和定义函数为inline(这将防止函数的多个定义)。通常使用频繁调用的相对较小的函数来完成,以防止调用开销并允许更好的优化:

//formulas.h
#ifndef FORMULAS_H
#define FORMULAS_H
namespace Formulas
{
   inline int myFormula(int,int)
   {
       //...
       return 42;
   }
};
#endif

3) 在头文件中声明和定义函数,标记它static。这不是首选,因为它将为每个包含标题的翻译单元创建函数的副本。

要使用该函数,您只需要包含声明它的标头并调用它。

于 2012-08-26T15:53:44.377 回答
0

头文件 (*.h)

int add(int a, int b);

cpp 文件顶部的源文件 (*.cpp)

#include "yourheader.h"

然后在 cpp 文件中的任何位置

...
int result=add(5,6);
...
于 2012-08-26T15:45:53.773 回答