⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c02ide.h

📁 类似vc6的集成开发环境的源代码
💻 H
字号:
// C02IDE.h : main header file for the C02IDE application
//
/*
 
                            
作者概况
姓  名:刘黎明
性  别:男
学    历:在读研究生
学    位:学士
毕业院校:北京科技大学
专  业:计算机科学与技术
出生年月:1980年 10月24日
健康状况:良好
身    高:1.77米
体    重:63公斤
毕业地点:北京
出生地点:湖北随州
电子邮件:liulimi0893@sina.com
联系电话:13691330960
通信地址:北京科技大学638#
邮    编:100083
特    长: 算法设计,组织,管理,交际,书法,写作,善于接受理解新概念新事物,容易适应新环境
     性格描述: 谦虚谨慎,踏实稳重,待人真诚,喜欢挑战
教育背景
1987.7-1993.7 随州市南郊区吴家桥小学 
1993.9 -1996.7 随州市岁丰学校
1996.9-1999.7 就读于湖北省随州市第二高级中学
1999.9-2003.7就读于北京科技大学信息工程学院计算机科学与技术专业
2003.9—今    北京科技大学计算机系系统结构专业硕士研究生
英语水平:具备比较熟练的听说读写能力,已通过英语四级和六级考试(可提供证书)
    技术背景
精通:Visual C++(MFC), .NET C++,
熟悉:.NET C# ,.NET ASP
初级:Delphi,Jbuider,Oracle
          
工作经验
熟悉vc下的MFC编程,曾参加C02IDE(c02语言集成开发环境)的开发,负责用户界面和编辑器的设计,对编译器和调试器有一定的了解。
    获奖情况
1995年,获学科综合竞赛市一等奖(可提供证书)
1998年,获数学联赛市三等奖(可提供证书),
物理奥林匹克省三等奖(可提供证书),
全国英语能力竞赛优胜奖(可提供证书)
1999年,获新生入学一等奖
2000年,获人民奖学金  
2001年,获团委社团工作先进个人称号(可提供证书)
       获人民奖学金
2002年,获‘校三好学生‘称号(可提供证书)
      获人民奖学金    

   社会活动
1999年 参加新生文艺汇演‘七月火把节‘舞蹈,一等奖
2000年 加入ibeike 团队技术部
2001年 第一届院健身运动会上任班级供稿员 
      参加计算机技能大赛
      参加参加校庆书法大赛
      作为候选人参加院学生会副主席竞选
任同心社宣传部部长,多次组织宣传活动
    2003年 班长,新生辅导员
    2004年 历任校研究生会宣传部长,办公室主任,副主席
  
*/
#if !defined(AFX_DEVSTUDIOUIDEMO_H__A70BFFA6_2939_11D3_873E_000000000000__INCLUDED_)
#define AFX_DEVSTUDIOUIDEMO_H__A70BFFA6_2939_11D3_873E_000000000000__INCLUDED_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

#ifndef __AFXWIN_H__
	#error include 'stdafx.h' before including this file for PCH
#endif
#include  <afxtempl.h>  
#include "resource.h"     // main symbols
#include "C02IDEView.h"
#include "TabClassDoc.h"
#include "TabFileView.h"


extern int i_usermode;//用户模式:1,编辑 2,编译 3,调试.

extern int i_newblankfile;//new file 个数
  //该结构保存一个函数信息
typedef struct FuncStruct
{
	// 存放函数名
  CString str_funcname;   
  //存放函数声明位置的行索引
  int      n_shengming;
  //存放函数定义位置的行索引
  int       n_dingyi;

  	 //要添加函数返回值类型
     CString str_functype;
	 //要添加函数的参数个数
     int     canshunumber;
     //addfuncinfo结构的对象数组,函数的参数信息
     CObArray canshuinfo;       

} funcStru;

//该结构保存一个断点信息
typedef struct CompStruct
{
	//存放断点的名称
  CString str_breakname;
   	//存放断点的位置的行索引
  int      n_breakline;

} comStru;
typedef struct ErrStruct
{
	//存放
// CString str_breakname;
   	//存放

	CMDIChildWnd *m_pChildWnd; 
	int     i_errline;

} errstru;
 extern  CObArray oa_error;   
//该结构保存一个文件的相关信息
//typedef struct
typedef struct FileList
{
	CString str_proname;
	//保存文件名
    CString str_filename;
	//保存子窗口对象指针
    CCJMDIChildWnd *m_pChildWnd;

	//保存一个树形目录的项	
	HTREEITEM t_fileitem;
	//CompStruct结构的对象数组
	CObArray compileinfstru;   
	//存储funcStru类型的对象数组
	CObArray funcinfstru;

	//存储AddFunc类型的对象数组
	CObArray oa_funcinfstru;



} fileStru;

//该结构保存一个项目的相关信息
typedef struct ProjectList
{    
	//保存项目名
	CString str_projectname;
    // 存储fileStru 类型的 对象数组
    CObArray proinfstru;       
} proStru;
 
//保存ProjectList结构的对象数组, 保存当前项目,文件,函数信息
extern     CObArray   projectinfo;   



  //保存当前操作的文件指针
	extern  FileList * m_pfile;    

 
//保存添加的函数的一个参数的信息
typedef struct CanShu
{   
	//参数名
	CString str_canshuname;
    //参数类型
	CString str_canshutype;       // 存储fileStru 类型
} addfuncinfo;

//保存添加的函数的相关信息
typedef struct AddFunc
{    
     //要添加函数的文件索引
	 int     n_addfileno;
	 //添加的函数名
     CString str_funcname;
	 //要添加函数返回值类型
     CString str_functype;
	 //要添加函数的参数个数
     int     canshunumber;
     //addfuncinfo结构的对象数组,函数的参数信息
     CObArray canshuinfo;        
} funcadd;                   

  // 指向AddFunc的指针,保存要添加的函数的信息 
extern struct AddFunc *functionadd;     

//一个树形节点的信息  
struct fileitem
	{
	    //节点的索引
		int n_nodenumber;
		//节点对应的CTREECTRL的一个项
		HTREEITEM titem;
		//节点对应的子窗口指针
		CMDIChildWnd *m_pchildf;
	};

//保存当前所有打开的文件的树形节点信息,在树形目录中的位置信息
extern  fileitem fileitemarray[30];  

//正在操作的文件编号  
extern int n_filenumber;
  
 //正在操作的函数编号       
extern int n_funcnumber;

//所加函数的参数个数        
extern	int allcanshunum;    

//正在处理的参数索引  
extern	 int addcanshunum;

//文件函数树形目录文档指针
extern	CTabFileDoc*		m_pDocFile;  

//文件断点树形目录文档指针
extern	CTabClassDoc*		m_pDocClass;
 
//当前子窗口将要定位光标的行索引 ,查找函数 及定位函数时使用       
  extern int gotoline;        

//保存编辑控件中当前选择的信息
  struct cursel
  {
	  //编辑控件中当前选择的起始字符的索引
	  int n_min;
	   //编辑控件中当前选择的结束字符的索引
	  int n_max;
  };

  //定义一个cursel类型的变量
    extern cursel curselpos;

	//当前查找字符串
	extern   CString findstring;

	//当前查找位置的行信息
    extern   int findstringcurhang;
	//当前查找位置的列信息
	extern   int findstringcurlie;


	//全文查找或多文件查找时使用的保存查找结果的结构
	struct SearchInf
	{
		//文件索引
		int n_fileno;
		//文件名
		CString str_filenm;
        //文件缩在窗口的指针
		CMDIChildWnd *m_pchildf;
		//字符串缩在行
		int n_lineno;
		//字符串缩在列
		int n_rowno;
		////字符串缩在行的文本信息
		CString str_linetext;
		
	};
   //定义一个SearchInf结构的变量
	extern     CObArray   a_searchinfo;  

	extern   int m_nItem;
   
	extern  int m_nSubItem;

	extern CMapPtrToPtr m_mappro;
 
/////////////////////////////////////////////////////////////////////////////
// CC02IDEApp:
// See C02IDE.cpp for the implementation of this class
//

class CMainFrame;
class CC02IDEApp : public CWinApp
{
public:
	CC02IDEApp();

    

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CC02IDEApp)
	public:
	virtual BOOL InitInstance();
	virtual int ExitInstance();
	//}}AFX_VIRTUAL

// Implementation
	CMainFrame* m_pMainFrame;
//	CMainFrame*			m_pMainFrame;
	CMultiDocTemplate*	m_pDocTemplate;
	CMultiDocTemplate*	m_pDocWorkspTemplate;
	CFrameWnd*			m_pChildFrame;
	BOOL                 m_bAutoReturn;

	//{{AFX_MSG(CC02IDEApp)
	afx_msg void OnProjectNew();
	afx_msg void OnFileNew();
	afx_msg void OnFileNewC02();
	afx_msg void OnAppAbout();
	afx_msg void OnFileOpen();
	afx_msg void OnFilePrintSetup();
	afx_msg void OnFileSaveAs();
	afx_msg void OnFileSaveAll();
	afx_msg void OnUpdateFileMruFile1(CCmdUI* pCmdUI);
	afx_msg BOOL OnOpenRecentFileEx(UINT nID);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
	virtual BOOL DoPromptFileName(CString& fileName, UINT nIDSTitle, DWORD lFlags,
                              BOOL bOpenFileDialog, CDocTemplate* pTemplate);
	
};


/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_DEVSTUDIOUIDEMO_H__A70BFFA6_2939_11D3_873E_000000000000__INCLUDED_)

⌨️ 快捷键说明

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