eightnums1.h
来自「利用VC开发的一个八数码程序」· C头文件 代码 · 共 58 行
H
58 行
// EIGHTNUMS1.h: interface for the CEIGHTNUMS class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_EIGHTNUMS1_H__BC15E0B5_D790_4609_9731_C69332AB48B5__INCLUDED_)
#define AFX_EIGHTNUMS1_H__BC15E0B5_D790_4609_9731_C69332AB48B5__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "afxcoll.h"
typedef struct NightNumstate{
int curdistance;
int state[3][3];
struct NightNumstate *laststate;
struct NightNumstate *nextstate;
}NightProState;
class CEIGHTNUMS
{
public:
//初始状态
NightProState IniState;
//目标状态
NightProState ObjState;
//当前状态
NightProState CurState;
//建立Open表
CPtrList Openlist;
//建立Close表
CPtrList Closelist;
//建立保存结果表
CPtrList ResultList;
NightProState *currentstep;
public:
bool MoveLeft(NightProState *cur,NightProState *obj);
bool MoveRight(NightProState *cur,NightProState *obj);
bool MoveUp(NightProState *cur,NightProState *obj);
bool MoveDown(NightProState *cur,NightProState *obj);
bool Compare(NightProState *cur1,NightProState *cur2);
int CompareFunction(NightProState *cur,NightProState *dest);
bool Search();
void FreeList(CPtrList *list);
void CopyNightNum(NightProState *cur,NightProState *dest);
int ComputeJiOu(NightProState *Jiou);
//m_sbdepth=10000;
// bool m_binidown;
// bool m_bobjdown;
CEIGHTNUMS();
virtual ~CEIGHTNUMS();
};
#endif // !defined(AFX_EIGHTNUMS1_H__BC15E0B5_D790_4609_9731_C69332AB48B5__INCLUDED_)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?