设为首页 加入收藏

TOP

C++入门学习笔记(八)
2016-12-06 20:24:46 】 浏览:1917
Tags:入门 学习 笔记
bItem同GetItemText。参数lpszText为要设置的显示文本字符串。如果设置成功则返回TRUE,否则返回FALSE。

DWORD_PTR GetItemData(int nItem) const;

该函数用于获取指定列表项的附加32位数据。参数nItem为列表项的索引。返回值就是由nItem指定列表项的附加32位数据。

BOOL SetItemData(int nItem,DWORD_PTR dwData);

该函数用于为指定列表项设置附加32位是数据。参数nItem为列表项的索引,参数dwData为列表项的附加32位数据。

25、CString类 CString类作为MFC的常用类,只要是从事MFC开发,基本都会遇到使用CString类的场合。因为字符串的使用比较普遍,而CString类又提供了对字符串的便捷操作,所以它给MFC开发人员带来了高的开发效率。使用VS2010的话,可能会见到CStringT,实际上它是一个操作可变长度字符串的模板类。CStringT模板类有三个实例:CString、CStringA和CStringW,它们分别提供对TCHAR、char和wchar_t字符类型的字符串的操作。char类型定义的是Ansi字符,wchar_t类型定义的是Unicode字符,而TCHAR取决于MFC工程的属性对话框中的Configuration Properties->General->Character Set属性,如果此属性为Use Multi-Byte Character Set,则TCHAR类型定义的是Ansi字符,而如果为Use Unicode Character Set,则TCHAR类型定义的是Unicode字符。CString类又很多构造函数:CString(const CString&tringSrc);将一个已经存在的CString对象stringSrc的内容拷贝到该CString对象。例如:1. CString str1(_T("panda")); // 将常量字符串拷贝到str1

2. CString str2(str1); // 将str1的内容拷贝到str2

CString(LPCTSTR lpch, int nLength);

将字符串lpch中的前nLength个字符拷贝到该CString对象。例如:CString str(_T(“panda”),3); // 构造的字符串对象内容为”pan” CString(TCHAR ch, int nLength = 1);使用此函数构造的CString对象中将含有nLength个重复的ch字符。例如:CString str(_T(‘p’),3); // str为”ppp” CString类的大小写转换及顺序转换函数CString& MakeLower();将字符串中的所有大写字符转换为小写字符。CString& MakeUpper();将字符串中的所有小写字符转换为大写字符。CString& MakeReverse();将字符串中所有字符的顺序颠倒。例如: CString str(_T(“JiZhuoMi”)); str.MakeLower(); // str为”jizhuomi” str.MakeUpper(); // str为”JIZHUOMI” str.MakeReverse(); // str为”IMOUHZIJ”CString对象的连接多个CString对象的连接可以通过重载运算符+、+=实现。例如:C++代码 CString str(_T(“panda”)); // str内容为”panda” str = _T(“kongfun”) + str + _T(“.”); // str为”kongfunpanda.” str += _T(“net”); // str为”kongfunpanda.net”CString对象的比较CString对象的比较可以通过==、!=、<、>、<=、>=等重载运算符实现,也可以使用Compare和CompareNoCase成员函数实现。int Compare(PCXSTR psz) const;将该CString对象与psz字符串比较,如果相等则返回0,如果小于psz则返回值小于0,如果大于psz则返回值大于0。int CompareNoCase(PCXSTR psz) const throw();此函数与Compare功能类似,只是不区分大小写。例如:C++代码 CString str1 = _T(“JiZhuoMi”); CString str2 = _T(“jizhuomi”); if (str1 == str2) { // 因为str1、str2不相等,所以不执行下面的代码 … } if (0 == str1.CompareNoCase(str2)) { // 因为不区分大小写比较时,CompareNoCase函数返回0,所以执行下面的代码 … }CString对象字符串的提取操作CString Left(int nCount) const;提取该字符串左边nCount个字符的子字符串,并返回一个包含这个子字符串的拷贝的CString对象。CString Right(int nCount) const;提取该字符串右边nCount个字符的子字符串,并返回一个包含这个子字符串的拷贝的CString对象。CString Mid(int iFirst,int nCount) const;提取该字符串中以索引iFirst位置开始的nCount个字符组成的子字符串,并返回一个包含这个子字符串的拷贝的CString对象。CString Mid(int iFirst) const;提取该字符串中以索引iFirst位置开始直至字符串结尾的子字符串,并返回一个包含这个子字符串的拷贝的CString对象。例如:C++代码 CString str1 = _T(“kongfunpanda”); CString str2 = str1.Left(3); // str2为”kon” str2 = str1.Right(2); // str2为”da” str2 = str1.Mid(1,3); // str2为”ong” str2 = str1.Mid(5); // str2为”unpanda”CString对象字符串的查找操作int Find(PCXSTR pszSub,int iStart=0) const throw( );int Find(XCHAR ch,int iStart=0) const throw( );在CString对象字符串的iStart索引位置开始,查找子字符串pszSub或字符ch第一次出现的位置,如果没有找到则返回-1。int FindOneOf(PCXSTR pszCharSet) const throw( );查找pszCharSet字符串中的任意字符,返回第一次出现的位置,找不到则返回-1。int ReverseFind(XCHAR ch) const throw();从字符串末尾开始查找指定的字符ch,返回其位置,找不到则返回-1。这里要注意,尽管是从后向前查找,但是位置的索引还是要从开始算起。C++代码 CString str = _T(“panda”); int nIndex1 = str.Find(_T(“an”)); // nIndex1的值为1 int nIndex2 = str.FindOneOf(_T(“nad”)); // nIndex2的值为1 int nIndex3 = str.Reverse

首页 上一页 5 6 7 8 9 10 11 下一页 尾页 8/11/11
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇数独 约束求解 C++ and Python 下一篇C++面向对象高效编程:数据抽象

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目