CStringArray

Posted wllwqdeai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CStringArray相关的知识,希望对你有一定的参考价值。

https://blog.csdn.net/biggbang/article/details/8756482

1.CStringArray类

CStringArray类可以用来存储CString类型的对象,而且它的容量是可以动态增加的。

CStringArray

CObject

└CStringArray

CStringArray类支持CString对象数组
CStringArray的成员函数类似于CObArray类的成员函数。由于具有这些相似性,你可以参考关于CObArray的参考文件来获取CStringArray成员函数的详细说明。如果在说明中看到某一函数的返回值是一个指向CObject对象的指针,则可以用一个CString(而不是一个CString指针)来代替它。如果看到某一函数的参数是一个指向CObject的指针,则可以用LPCTSTR来代替它。
例如,可以将
CObject* CObArray::GetAt( int <nIndex> ) const;
转换为
CString CStringArray::GetAt( int <nIndex> ) const;
和将
void SetAt( int <nIndex>, CObject* <newElement> )
转换为
void SetAt( int <nIndex>, LPCTSTR <newElement> );
CStringArray与IMPLEMENT_SERIAL宏联合起来支持其元素的连续和转储。如果一个CString对象数组被用一个重载的插入操作符或Serialize成员函数保存到一个存档中,则它的每一个元素都按顺序连续。
注意:
在使用一个数组之前,使用SetSize来建立它的大小并给它分配内存。如果你不使用SetSize,则向数组中添加元素将导致数组被频繁地拷贝和分配内存。频繁分配内存和拷贝会导致效率低和内存零碎。

如果你需要数组中个别字符串元素的转储,则应该将转储环境的深度设置为1或更大。当一个CString数组被删除时,或当其中的个别元素被删除时,字符串内存被根据需要释放。
有关使用CStringArray的更多信息,参见“VisualC++程序员指南”中的文章“集合”。
#include <afxcoll.h>

CStringArray类成员

构造

CStringArray

构造一个空的CString对象数组

绑定

GetSize

获取这个数组中的元素数目

SetSize

设置这个数组中包含的元素数目

GetUpperBound

返回最大的有效索引

操作符

FreeExtra

释放当前数组边界之外的未使用的所有内存

RemoveAll

从数组中删除所有元素

元素访问

GetAt

返回位于给定索引处的值

SetAt

设置给定索引处的元素的值;不得将数组增大

ElementAt

返回对数组中的某一元素指针的临时引用

GetData

对数组中的元素允许的访问。可以是NULL

扩大数组

SetAtGrow

设置给定索引处的值,如果必要的话可以增长数组

Add

在数组的末尾添加一个元素;可根据需要增长数组

Append

向数组中添加另一个数组;如果必要的话可增长数组

Copy

将另一个数组拷贝到此数组中;如果必要的话可增长数组

插入/删除

InsertAt

在指定索引处插入一个元素(或者是另一个数组中的所有元素)

RemoveAt

删除指定索引处的一个元素

操作符

operator []

设置或获取在指定索引处的元素

















以上是关于CStringArray的主要内容,如果未能解决你的问题,请参考以下文章