SAFEARRAY Arrays
SAFEARRAY arrays can contain any of the supported simple data types. This type of array is a common way to support arrays in (oleautomation) interfaces.
The number of elements is not known at compile time, however it is known at run time, so they are represented as a group of variable size(s) in the type tree.
In the adapter call of Invoke method, an array size is determined according to those attributes.
For example:
HRESULT SumOfInts( [in] SAFEARRAY(long) intsToSum, [out] long* sum);