eightnums.h

来自「利用VC开发的一个八数码程序」· C头文件 代码 · 共 82 行

H
82
字号
#if !defined(AFX_EIGHTNUMS_H__4D3E0965_2BE6_4A6E_8B24_6728C74E1BB0__INCLUDED_)
#define AFX_EIGHTNUMS_H__4D3E0965_2BE6_4A6E_8B24_6728C74E1BB0__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "afxcoll.h"
// EIGHTNUMS.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CEIGHTNUMS dialog
typedef struct NightNumstate{
	int curdistance;
	int state[3][3];
	struct NightNumstate *laststate;
	struct NightNumstate *nextstate;
}NightProState;

class CEIGHTNUMS : public CDialog
{
// Construction
	public:
	//初始状态
	NightProState IniState;   
	//目标状态
	NightProState ObjState;
	//当前状态
	NightProState CurState;
	//建立Open表
	CPtrList Openlist;
	//建立Close表
	CPtrList Closelist;
	//建立保存结果表
	CPtrList ResultList;

public:
	bool m_binidown;
	bool m_bobjdown;
	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);
	int m_ndepth;
	


// Dialog Data
	//{{AFX_DATA(CEIGHTNUMS)
	enum { IDD = IDD_SHOWRESULT };
		// NOTE: the ClassWizard will add data members here
	//}}AFX_DATA


// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CEIGHTNUMS)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:

	// Generated message map functions
	//{{AFX_MSG(CEIGHTNUMS)
	afx_msg void OnNextstep();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_EIGHTNUMS_H__4D3E0965_2BE6_4A6E_8B24_6728C74E1BB0__INCLUDED_)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?