C++ CComSafeArray MultiDimSetAt是否复制引用的元素?

C++ CComSafeArray MultiDimSetAt是否复制引用的元素?,c++,visual-studio,com,visual-c++,atl,C++,Visual Studio,Com,Visual C++,Atl,提供一个参数来控制是否复制引用的变量: HRESULT SetAt( LONG lIndex, const T& t, BOOL bCopy = TRUE ); 。。。但不提供相同的参数: HRESULT MultiDimSetAt( const LONG * alIndex, const T& t ); 两个问题: 1.)MultiDim方法中不提供此选项是否有原因 2.)文档未指定引用变量是否被复制。它是隐式复制的吗 (在我的情况下,我希望它不被复制,因为它是一个变量类

提供一个参数来控制是否复制引用的变量:

HRESULT SetAt(
LONG lIndex,
const T& t,
BOOL bCopy = TRUE
);
。。。但不提供相同的参数:

HRESULT MultiDimSetAt(
const LONG * alIndex,
const T& t 
);
两个问题:

1.)MultiDim方法中不提供此选项是否有原因

2.)文档未指定引用变量是否被复制。它是隐式复制的吗


(在我的情况下,我希望它不被复制,因为它是一个变量类型的临时包装器,在将其设置到数组中后可以“分离”)

内部MultiDimSetAt使用SafeArrayPutElement函数。 这意味着将复制BSTR并添加对象