专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅
1 、CString 对象的连接   能体现出 CString 类型方便性特点的一个方面就字符串的连接,使用 CString 类型,你能很方便地连接两个字符串,正如下面的例子: CString gray("Gray"); CString cat("Cat"); CString graycat = gray + cat; 要比用下面的方法好得多: char gray[] = "Gray"; char cat[] = "Cat"; char * graycat = malloc(strlen(gray) + strlen(cat) + 1); strcpy(g [阅读全文] [PDF]
andyxu CString 操作指南 原文出处:codeproject:CString Management  CString 是一种很有用的数据类型。它们很大程度上简化了MFC中的许多操作,使得MFC在做字符串操作的时候方便了很多。不管怎样,使用CString有很多特殊的技巧,特别是对于纯C背景下走出来的程序员来说有点难以学习。这篇文章就来讨论这些技巧。   使用CString可以让你对字符串的操作更加直截了当。这篇文章不是CString的完全手册,但囊括了大部分常见基本问题。 这篇文章包括以下内容: CString 对象的连接 格式化字符串(包括 int 型转化 [阅读全文] [PDF]
标签:cstring
.CString -> 1. CString cs; value; sscanf((LPCTSTR)cs, "%d", &value); 2. CString str="1234"; i = atoi((char*)LPCTSTR(str)); 2.CString -> char * (LPCTSTR)m_srvName 3.获取CString思路方法 left [阅读全文] [PDF]
CString是一种很特殊的C++对象,它里面包含了三个值:一个指向某个数据缓冲区的指针、一个是该缓冲中有效的字符记数(它是不可存取的,是位于CString地址之下的一个隐藏区域)以及一个缓冲区长度。有效字符数的大小可以是从0到该缓冲最大长度值减1之间的任何数(因为字符串结尾有一个NULL字符)。字符记数和缓冲区长度被巧妙隐藏。 1.CString与float的转变 1)CString转变为float CStringstrContent; floatfNum; fNum=atof(strContent); 2)float转变为CString CString [阅读全文] [PDF]
  这是出现在 microsoft.public.vc.mfc 新闻组中的一个小问题,我简单的提一下,这个问题是有个程序员需要往注册表中写入一个字符串,他写道:  我试着用 RegSetValueEx() 设置一个注册表键的值,但是它的结果总是令我困惑。当我用char[]声明一个变量时它能正常工作,但是当我用 CString 的时候,总是得到一些垃圾:\"ÝÝÝÝ...ÝÝÝÝÝÝ\"为了确认是不是我的 CString 数据出了 [阅读全文] [PDF]
  CString 的一个问题是它确实掩藏了一些低效率的东西。从另外一个方面讲,它也确实可以被实现得更加高效,你可能会说下面的代码: CString s = SomeCString1;s += SomeCString2;s += SomeCString3;s += \",\";s += SomeCString4; 比起下面的代码来,效率要低多了: char s[1024];lstrcpy(s, SomeString1);lstrcat(s, SomeString2);lstrcat(s, SomeString 3);lstrcat(s, \",\");lstrcat [阅读全文] [PDF]
  能体现出 CString 类型方便性特点的一个方面就字符串的连接,使用 CString 类型,你能很方便地连接两个字符串,正如下面的例子,,www. :CString gray(\"Gray\");CString cat(\"Cat\");CString graycat = gray + cat; 要比用下面的方法好得多: char gray[] = \"Gray\";char cat[] = \"Cat\";char * graycat = malloc(strlen(gray) + strlen(cat) + 1);strcpy(graycat, gra [阅读全文] [PDF]
  当我们使用 ActiveX 控件编程时,经常需要用到将某个值表示成 BSTR 类型。BSTR 是一种记数字符串,Intel平台上的宽字符串(Unicode),并且 可以包含嵌入的 NULL 字符。你可以调用 CString 对象的 AllocSysString 方法将 CString 转化成 BSTR:CString s;s = ... ; // whateverBSTR b = s.AllocSysString();   现在指针 b 指向的就是一个新分配的 BSTR 对象,该对象是 CString 的一个拷贝,包含终结 NULL字符。现在你可以将它传递给任 [阅读全文] [PDF]
  由于 BSTR 是记数 Unicode 字符串,你可以用标准转换方法来创建 8 位的 CString。实际上,这是 CString 内建的功能。在 CString 中 有特殊的构造函数可以把 ANSI 转化成 Unicode,也可以把Unicode 转化成 ANSI。你同样可以从 VARIANT 类型的变量中获得 BSTR 类型的字符串,VARIANT 类型是 由各种 COM 和 Automation (自动化)调用返回的类型。例如,在一个ANSI程序中:BSTR b;b = ...; // whateverCString s(b == NULL ? L\"\" [阅读全文] [PDF]
  事实上,我从来没有这么做过,因为我没有用 COM/OLE/ActiveX 编写过程序。但是我在microsoft.public.vc.mfc 新闻组上看到了 Robert Quirk 的一篇帖子谈到了这种转化,我觉得把他的文章包含在我的文章里是不太好的做法,所以在这里多做一些解释和演示。如果和他的文章有相孛的地方可能是我的疏忽,www. 。  VARIANT 类型经常用来给 COM 对象传递参数,或者接收从 COM 对象返回的值。你也能自己编写返回 VARIANT 类型的方法,函数返回什么类型依赖可能(并且常常)方法的输入参数(比如,在自动化操作中,依赖与你调用 [阅读全文] [PDF]
1 共10条 分1页