📄 subject_24465.htm
字号:
<p>
序号:24465 发表者:xiongli 发表日期:2002-12-12 21:46:04
<br>主题:为什么mfc/sdk不能一起使用?
<br>内容:我同学在用sdk写一个播放器,里面需要实现一个像CFileDialog一样的文件选择对话框.但是CFileDialog却是在mfc里面使用的.如果是在sdk里面,请问我要怎么做?<BR><BR>同时,相关联的两个问题:<BR><BR>1,为什么mfc不能和sdk一起使用.也就是说,如果我include了windows.h,就不能include mfc的header了.这仅仅是因为sdk/mfc里面有相同名字的函数吗?<BR><BR>2,既然不能include windows.h在前,include mfcheader再后,那么我把它翻过来,先include mfcheader,然后include windows.h,于是,编译就可以通过了.但是,却发生了下面的情况:如果我把#include "afxdlgs.h"写在main.cpp里面的开头,然后再写include "stdafx.h",那么,afxdlgs里面定义的CFileDialog就好像不存在,会说undefined symbol,但是如果我吧afxdlgs.h和windows.h写在stdafx.h 里面,编译就可以通过,但是link就不行了,就会有__beginthread/__endthread没有定义.<BR><BR>我想知道,在vc里面,头文件的顺序有什么注意的??为什么mfc/sdk不能通用<BR>如果我要在sdk里面使用mfc里面的某一个class,我要怎么办??<BR><BR><BR>ps:我在其他地方和msdn看了一下,好像是跟头文件预编译有关的,但是我却不是很懂.同时,好像stdafx.h必须放在前面,不然会出现unexpected end of file.这是什么意思?我看了看stdafx.h里面的#if 语句,好像跟这个没关系阿!<BR><BR>thanks!<BR><BR>2002-12-12 21:49:59
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -