可以通过三种方法查看MFC类函数的代码。第一种是通过Visual Studio的“对象浏览器”实现;第二种是通过“Virsual Assiat X”插件实现;第三种是在调试时实现。
1 过Visual Studio的“对象浏览器”实现
通过“对象浏览器”可以查看应用程序的类。在通过对象浏览器查看MFC类函数的源代码时,需要导入mfc.bsc文件。
1.1 mfc.bsc文件所在路径
该文件包含了MFC源代码,对于VS2008,mfc.bsc文件位于
C:\Program Files\Microsoft Visual Studio 9.0\VS\atlmfc\src\mfc中,如图1所示。
图1 mfc.bsc文件位置
1.2 导入mfc.bsc文件
在VS2008中,选择菜单栏“视图->对象浏览器”,之后在对象浏览器选项卡的“浏览”项的下拉菜单中选择“自定义组件集”,如图2所示。
图2 打开对象浏览器
接下来点击右侧的“编辑自定义组件集”,如图3所示。
图3 编辑自定义组件集按键
在弹出的“编辑自定义组件集”对话框中,在“文件类型”选项中选择“源浏览器文件”,之后选中“mfc.bsc”,最后点击“添加”按键和“确定”按键,如图4所示。
图4 导入mfc.bsc文件
1.3 查看源代码
将mfc.bsc文件导入之后,接下来就可以查看MFC类函数的源代码了。例如,要查看CFile类的Read()函数,在“对象浏览器”的搜索框中输入“CFile”,之后点击右侧的“搜索”按键,在右侧的树形控件中选中“Read()”函数,右键菜单选择“转到定义”,如图5所示。
图5 转到函数定义
查看CFile::Read()函数的源代码如图6所示。
图6 CFile::Read()函数的源代码
通过mfc.bsc文件查看MFC类函数源代码的方法只适用于VS2008及以下版本。
2 通过Visual Assist X插件实现
Visual Assist X是Microsoft Visual Studio的插件,提高了VS IDE的可用性。安装了Visual Assist X之后,在VS2010的菜单栏中会新增一个“VAssisX”项,如图6所示。
图6 菜单栏VAssisX选项
打开任意一个项目(这一步非常重要,如果不打开某个项目,无法使用查看源代码的功能),在VS2010的菜单栏中选择“VAssisX->Find Symbol”,之后在弹出的“Find Symbol”对话框的下半部输入“CFile.Read”,在窗口的上半部就会显示该函数,如图7所示。
图7 查找函数
在对话框上半部“CFile.Read”处的右键菜单中选择“Goto”,即可查看该函数的源代码,如图8、图9所示。
图8 查看源代码
图9 CFile::Read()函数源代码
3 调试时实现
仍以查看CFile::Read()函数的源代码为例,有如下代码
CFile file(_T("D:\\1.txt"), CFile::modeRead);
char* buf[100];
file.Read(buf, 100);
需要注意的是,必须要把项目的动态库类型设置为“在静态库中使用
MFC
”,如图
10
所示。
图10 在静态库中使用MFC
之后,在
file.Read(buf, 100);
代码
上设置
断点,
按“
F5
”调试,程序会在断点处停止,之后按下“
F11
”,即可进入
CFile::Read()
函数的源代码,如图
11
所示。
图11 CFile::Read()函数源代码