У меня есть словарь dictA
, который содержит {AA,1},{AB,2},{AC,3}
, и корректирующий словарь dictAdj
, содержащий {AB,-4}
.
Я передаю эти два в функцию, вызывающую ее funcReconcile(ByVal Arg1 as Dictionary, ByVal Arg2 as Dictionary) as Dictionary
.
Функция будет перебирать содержимое dictAdj, чтобы увидеть, существуют ли они в dictA.
Затем функция настроит dictA (например), чтобы в выходном словаре отображалось {AA,1},{AB,-2},{AC,3}
.
По какой-то причине, когда функция возвращает словарь, мой первоначальный dictA
также вступает в силу, заставляя его отображать {AA,1},{AB,-2},{AC,3}
, а не {AA,1},{AB,4},{AC,3}
, как следует.
Я знаю, что есть проблемыв VBA с передачей ByRef и ByVal для объектов, но это первый случай, когда я действительно ударился головой о стену чем-то вроде этого.
Есть какие-нибудь указатели?(без каламбура)