在多文件编程中,定义数据的方式如下:
全局变量:
全局变量应该在一个`.cpp`文件中定义,而不是在头文件中。全局变量在程序中只有一个实例,可以在多个文件中被访问和修改。例如,在`add.cpp`文件中定义全局变量`gAdd1`:
```cpp
int gAdd1 = 44;
```
函数声明:
函数声明通常放在头文件中,这样其他文件可以通过包含头文件来使用这些函数。函数声明包括函数名和参数列表,不需要实现代码。例如,在`add.h`文件中声明`add`和`minus`函数:
```cpp
int add(int a, int b);
int minus(int a, int b);
```
函数定义:
函数定义(实现)通常放在另一个`.cpp`文件中。函数定义包括函数名和实现代码。例如,在`add.cpp`文件中定义`add`和`minus`函数:
```cpp
int add(int a, int b) {
int re = a + b;
return re;
}
int minus(int a, int b) {
int re = a - b;
return re;
}
```
头文件保护:
为了避免头文件被多次包含,通常使用预处理器指令`ifndef`、`define`和`endif`来防止头文件内容的重复包含。例如,在`add.h`文件中添加头文件保护:
```cpp
ifndef _ADD_H_
define _ADD_H_
// 函数声明
int add(int a, int b);
int minus(int a, int b);
endif // _ADD_H_
```
通过以上步骤,你可以在多文件编程中有效地定义和使用数据。确保每个文件中的函数和变量都有明确的声明和定义,并且通过头文件保护来避免重复包含问题。