请帮助 - 什么是全局功能及其用途和时间?语法是(最简单的):
int Sum (Class_name h) {...}
答案 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)已定义,在这种情况下,此函数需要高于)