13.1 内存泄露问题
真正的内存泄露是有循环性反复申请而不释放内存:是指在软件运行时,比如点一下某按钮就申请一次堆空间,而在下次申请前或者适当的时机及时释放内存;
Detected memory leaks!
Dumping objects ->
{225} normal block at 0x006E9750, 92 bytes long.
13.2 CFileDialog文件对话框
GetPathName
:获取选中的全路径文件名
构造函数
CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = NULL, CWnd* pParentWnd = NULL )
a)bOpenFileDialog
:TRUE
打开( FALSE
另存为)
b)lpszDefExt
:填写缺省后缀名
c)lpszFileName
:显示文件名框的初始文件名。 如果 NULL
,不是初始文件名显示。
(用来指定缺省落在的目录,或者用来指定一个缺省过滤器)
d)dwFlags
:有打开专用和另存为专用,打开和另存为通用选项
OFN_ALLOWMULTISELECT
:打开专用
OFN_CREATEPROMPT
:另存为专用
OFN_OVERWRITEPROMPT
:另存为专用
e)lpszFilter:列表项文字|过滤内容 并且用||作为结尾符号
例如:
LPCTSTR sFilter = _T("文本文件 (*.txt)|*.txt|所有文件 (*.*)|*.*||");