0

例如,我们有两个名为 SourceArray 和 DestinationArray 的数组。在 Visual Foxpro 中,为了将一个数组复制到另一个数组中,如果我们将 SourceArray 的名称作为字符串(即“SourceArray”),我们可以使用“&”进行复制,如下所示。

fox code:
lcArrayname="SourceArray"

ACOPY(&lcArrayname, DestinationArray)

谁知道我如何在 Visual C++ 中做到这一点?请帮忙。

4

1 回答 1

4

C++ 不支持“反射”或在运行时查找程序对象的能力(使用它们的名称或通过遍历类层次结构等)。为了将一个数组的内容复制到另一个数组中,您必须将源数组和目标数组都作为变量。

您可以通过创建以字符串为键的数据结构来模拟这种能力。例如,使用 STL:

map< string, vector<int> > myVectors;

这将创建一个以字符串为键并返回整数向量的映射。通过这种方式,您可以将向量存储到以字符串值为键的映射中,并稍后根据该字符串查找数组。

于 2013-08-01T14:07:06.960 回答