MFC学习笔记9 常用一些类

来源:互联网 发布:java md5盐值加密解密 编辑:程序博客网 时间:2024/05/20 00:12

字符串类(CString)

构造函数

CString( );例:CString csStr;CString( const CString& stringSrc );例:CString csStr("ABCDEF中文123456");    CString csStr2(csStr);CString( TCHAR ch, int nRepeat = 1 );例:CString csStr('a',5);//csStr="aaaaa"CString( LPCTSTR lpch, int nLength );例:CString csStr("abcdef",3);//csStr="abc"CString( LPCWSTR lpsz );例:wchar_t s[]=L"abcdef";    CString csStr(s);//csStr=L"abcdef"CString( const unsigned char* psz );例:const unsigned char s[]="abcdef";    const unsigned char* sp=s;    CString csStr(sp);//csStr="abcdef"CString( LPCSTR lpsz );例:CString csStr("abcdef");//csStr="abcdef"

CString类的构造函数可以作为转换函数,实现与const char* 和 LPCSTR等数据类型之间的转换。

成员函数

可参考:
https://www.cnblogs.com/Caiqinghua/archive/2009/02/16/1391190.html
关于字符串操作,这篇文章里也有一些知识点:
http://blog.csdn.net/xundh/article/details/42294597

集合类

数组类

类声明:

template < class TYPE, class ARG_TYPE >class CArray : public CObject

CArray类既可以固定数组大小,也可以动态添加元素扩展数组大小。不管数组元素中的值是什么,CArray都会连续分配内存。与C中的数组一样,使用索引访问CArray元素时,索引值必须为常数,且必须在数组大小范围内。
CArray类还提供了一些成员函数。

链表类

CList类与CArray类的实现方式类似,区别在于,CArray实现顺序存储的数组,而CList类实现对象的链表存储方式,其是双向指针链表。其中使用POSITION类型的变量表示链表中元素的位置,但是POSITION与索引的类型是不同的,可以看作书签。链表类的声明如下:

template < class TYPE,class ARG_TYPE >class CList : public CObject

链表类也提供了一组成员函数。

日期、时间类

CTime

CTime没有基类,表示一个绝对时间和日期,是一个time_t的数据类型,并且与运行时库函数相连。

CTimeSpan类

时间间隔

MFC文件操作类 CFile

MFC中使用CFile类封闭了有关文件的操作,它是MFC的基类,并直接提供了非缓冲的、二进制磁盘输入/输出服务。通过派生类间接支持文本文件和内存文件,并且与CArchive类结合使用可以提供对序列化的支持。

MFC 异常类

CException类是MFC中的所有异常类的基类。

文件异常类 CFileException