Копирование массива с использованием его имени в качестве строки

Например, у нас есть два массива: SourceArray и DestinationArray. В Visual Foxpro для копирования одного массива в другой массив, если у нас есть имя SourceArray в виде строки (которая будет «SourceArray»), мы можем выполнить копирование с помощью «&»как следует.

fox code:
lcArrayname="SourceArray"
ACOPY(&lcArrayname, DestinationArray)

Кто знает, как я могу сделать это в Visual C ++? Пожалуйста помоги.

0

Решение

C ++ не поддерживает «отражение» или способность находить программные объекты во время выполнения (используя их имя или обход иерархии классов и т. Д.). Чтобы скопировать содержимое одного массива в другой, вы должны иметь под собой и исходный, и целевой массив в качестве переменных.

Вы можете смоделировать эту возможность, создав структуру данных, снабженную строкой. Например, используя STL:

map< string, vector<int> > myVectors;

Это создает карту, которая принимает строку в качестве ключа и возвращает вектор целых чисел. Таким образом, вы можете сохранять векторы в карте, заданные строковым значением, и искать массивы позже на основе этой строки.

4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]