一些定义
随着程序越来越复杂,我们希望把程序的各个部分分别存储再不同的文件中.
一个程序,我们可以分成三个部分
1.头文件:包含结构声明和使用这些结构的函数的原型
2.源代码文件:包含于结构有关的函数的代码
3.源代码文件:包含调用于结构相关的函数的代码
头文件常包含的内容:
1.函数原型
2.使用#define 或const定义的符号常量
3.结构声明
4.类声明
5.模板声明
6.内联函数
一个例子
头文件
head.h
#pragma once
#ifndef HEAD_H_H
#define HEAD_H_H
#include<string>
using namespace std;
struct Game
{
string gameName;
string gameScore;
};
void inputGame(Game games[], int size);
void sort(Game games[], int size);
void display(const Game games[], int size);
const int Size = 5;
#endif // !HEAD_H_H
两个源文件
Game.cpp 用来放函数的
#include<iostream>
#include "head.h"
using namespace std;
void inputGame(Game games[], int size) {
for (int i = 0; i < size; i++) {
cout << "请输出喜欢游戏的名称" << endl;
cin >> games[i].gameName;
cout << "请输入游戏评分(10以内的小数):";
cin >> games[i].gameScore;
}
}
void sort(Game games[], int size) {
Game temp;
for (int i = 0; i < size - 1; ++i) {
for (int j = i + 1; j < size; ++j) {
if (games[i].gameScore < games[j].gameScore) {
temp = games[i];
games[i] = games[j];
games[j] = temp;
}
}
}
}
void display(const Game games[], int size) {
for (int i = 0; i < size; i++) {
cout << i + 1 << ":" << games[i].gameName << "(" << games[i].gameScore << ")" << endl;
}
}
主CPP
#include "head.h"
#include<iostream>
int main() {
cout << "请输入5个你喜欢的游戏的名称,并给它们评分:" << endl;
Game games[Size] = {};
inputGame(games, Size);
sort(games, Size);
display(games, Size);
return 0;
}
运行结果
请输入5个你喜欢的游戏的名称,并给它们评分:
请输出喜欢游戏的名称
Steam
请输入游戏评分(10以内的小数):8
请输出喜欢游戏的名称
LOL
请输入游戏评分(10以内的小数):8
请输出喜欢游戏的名称
饥荒
请输入游戏评分(10以内的小数):8
请输出喜欢游戏的名称
NBA
请输入游戏评分(10以内的小数):8
请输出喜欢游戏的名称
沙滩排球
请输入游戏评分(10以内的小数):9
1:沙滩排球(9)
2:LOL(8)
3:饥荒(8)
4:NBA(8)
5:Steam(8)