类/全局函数声明C ++

时间:2013-02-20 17:36:09

标签: c++ function

请帮助 - 什么是全局功能及其用途和时间?语法是(最简单的):

int Sum (Class_name h) {...}

2 个答案:

答案 0 :(得分:4)

在C ++中,“全局函数”应该在.cpp文件中定义,并在.h文件中声明。

例如

Sum.h:

int Sum(int a, int b); // declaration (prototype)

Sum.cpp:

int Sum(int a, int b) // definition
{
    return a + b;
}

现在,如果你想在另一个.cpp文件中使用Sum函数,只需添加#include "Sum.h"并使用该函数。

AnotherModule.cpp:

#include "Sum.h"

void MyOtherFunction()
{
    int var = Sum(3,4);
}

答案 1 :(得分:3)

全局函数(在C ++中)是一个可以在代码中的任何位置访问的函数。 它是C编程语言的遗产。对于那些以java语言开头的人来说,它看起来很奇怪,因为它不在类中,但它有点像公共静态方法,因为你不需要任何对象来调用它

所以,你可以在任何地方使用这个函数...(只是为了确保它之前已经被声明了(参见注释),就像在头文件中一样。)最好将它们包含在命名空间中以避免与其他名称冲突库和组织代码,但C ++允许在全局范围内声明它。

当与任何对象没有关系时,或者当它只是在声明它的文件中使用的函数时,你可以使用它...例如,如果你想要从主函数或操作中初始化你不想上课等。 对此没有严格的规定......这是你最感觉的;)

注意: “声明”=你告诉编译器函数int Sum (Class_name h)存在,所以他不会侮辱你“你的函数还没有被声明”

“已定义”=您对自己的功能进行编码。需要告诉编译器这个函数做了什么示例: int sum(Class h){ return h.a + h.b; }

你需要在.c / .cpp中定义你的函数(不是“#define”;))并使用.h中的声明来使用它(除非你正在编辑函数的.cpp)已定义,在这种情况下,此函数需要高于)