📄 airport.h
字号:
// Airport.h: interface for the Airport class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_AIRPORT_H__A20FD48B_4641_40A2_B0E5_2714383E6201__INCLUDED_)
#define AFX_AIRPORT_H__A20FD48B_4641_40A2_B0E5_2714383E6201__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "Flight.h"
class Airport //定义机场
{
public:
Airport();
virtual ~Airport();
void SetFlightArr(bool f); //生成到达航班信息
void SetFlightArr(vector<Flight> f_arr); //根据已知到达航班生成到达航班信息
Flight GetFlightArr(int n) const { return flightArr[n]; }
void SetFlightDep(bool f); //生成出发航班信息
void SetFlightDep(vector<Flight> f_dep); //根据已知出发航班生成出发航班信息
Flight GetFlightDep(int n) const { return flightDep[n]; }
void InitialAirport(bool f); //随机产生机场在各个时间段的容量
void SetAirport_Arr(int t,int flightCount); //设置机场某时间段的到达容量
int GetAirport_Arr(int t) const { return Airport_Arr[t]; }
void SetAirport_Dep(int t); //设置机场某时间段的出发容量
int GetAirport_Dep(int t) const { return Airport_Dep[t]; }
void Set_FCFSArrFlight(); //先来先服务算法设置机场在各个时间段的到达航班
void Set_FCFSDepFlight(); //先来先服务算法设置机场在各个时间段的出发航班
void SetAirport_ArrFlight(); //设置机场在各个时间段的到达航班
void GetAirport_ArrFlight(int t); //获得机场在t时间段的到达航班
void SetAirport_DepFlight(); //设置机场在各个时间段的出发航班
void GetAirport_DepFlight(int t); //获得机场在t时间段的出发航班
void Reverse_flightArr(int startIndex,int stopIndex); //改变到达航班容器中航班的位置
void Reverse_flightDep(int startIndex,int StopIndex); //改变出发航班容器中航班的位置
void SetOptDone(bool f) { optDone=f; }
bool isOptDone() const { return optDone; }
void do2Opt(); //优化到达航班,通过换位使航班总的延误时间段减小
void CountDelay_Arr(); //计算到达延误时间段和航班数
void CountDelay_Dep(); //计算出发延误时间段和航班数
void CountDelay(); //计算总的延误时间段数和航班数
int GetDelayTime_Arr() const { return DelayTime_Arr; }
int GetDelayTime_Dep() const { return DelayTime_Dep; }
void SetDelayTime(int t) { DelayTime=t; } //设置总的航班延误时间段
int GetDelayTime() const { return DelayTime; } //获得总的航班延误时间段
//void CountDelayFlight_Arr(); //计算到达延误航班数
int GetDelayFlight_Arr() const { return DelayFlight_Arr; }
//void CountDelayFlight_Dep(); //计算出发延误航班数
int GetDelayFlight_Dep() const { return DelayFlight_Dep; }
//void CountDelayFlight() { DelayFlight=DelayFlight_Arr+DelayFlight_Dep; } //计算总的延误航班数
int GetDelayFlight() const { return DelayFlight; } //得到总的延误航班数
private:
vector<Flight> flightArr; //存放到达航班信息
vector<Flight> flightDep; //存放出发航班信息
vector<int> Airport_Arr; //机场在各个时间段的到达容量
vector<int> Airport_Dep; //机场在各个时间段的出发容量
int DelayTime_Dep; //机场航班总的出发延误时间段数
int DelayTime_Arr; //机场航班总的到达延误时间段数
int DelayTime; //机场航班总的延误时间段数
int DelayFlight_Dep; //机场总的出发延误航班数
int DelayFlight_Arr; //机场总的到达延误航班数
int DelayFlight; //机场总的延误航班数
vector<Flight> Airport_ArrFlight[T]; //机场在各个时间段的到达航班
vector<Flight> Airport_DepFlight[T]; //机场在各个时间段的出发航班
bool optDone;
};
#endif // !defined(AFX_AIRPORT_H__A20FD48B_4641_40A2_B0E5_2714383E6201__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -