一个MFC问题

来源:百度知道 编辑:UC知道 时间:2024/05/16 11:40:52
自己派生个MFC基础类,或者是自己插入个类,在。H里面都有这个,这两部分分别是什么意思啊?我想自己再写上#include"adsfasfd.h"是写在哪里都行吗?

××××××××××××××××××××××××××××××××

#if !defined(AFX_CLIENTSOCKETLIST1_H__D1518AA4_3F67_436A_9498_0E52D6FCE764__INCLUDED_)
#define AFX_CLIENTSOCKETLIST1_H__D1518AA4_3F67_436A_9498_0E52D6FCE764__INCLUDED_

×××××××××××××××××××××××××××××××××

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

这些都是预编译宏,用来在编译之前对源代码进行预处理
你的#include最好写在class定义的正上方

#if !defined(AFX_CLIENTSOCKETLIST1_H__D1518AA4_3F67_436A_9498_0E52D6FCE764__INCLUDED_)
#define AFX_CLIENTSOCKETLIST1_H__D1518AA4_3F67_436A_9498_0E52D6FCE764__INCLUDED_
这个是要给文件指定唯一ID,以后文件互相引用时可以通过唯一ID判断文件是否已经被引用过,防止重复引用

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
这个是判断VC版本啦,VC4.0的版本是1000,VC6.0的版本是1200,
4.0以上版本VC有编译数据库,源文件打开一次就可以完成编译字典的构造了,不象以前版本要多次打开源文件

你自己的#include应该放在上面这些预编译指令之后,如果VC自动生成了#include指令,那么一般也要放在这些#include之后,
但是要放在自己的源代码之前,就像楼上说的,放在类、结构、函数等等之前