Template class used in C++ for the targets of vector or matrix arguments.
For each vector or matrix argument to an add-in function, a local container variable is declared, and the input is copied into it after validation. If the argument's ContainerClass property is set, then the container will be of the type specified by the property. However, if the argument's container class property is left empty (the default), then the container class used will be that specified by DefaultVectorContainer or DefaultMatrixContainer as appropriate.
There are two varieties of notation for specifying a container class.
Template class for T
The class name is a C++ template class, with the letter
          T representing the scalar type.
          Thus, if you specify std::vector<T> for
          a vector of type Double, the generated container 
          class will be std::vector<double>.
        
Template arguments other than T will be left unchanged.
          Thus a container class boost::multi_array<T, 2>
            for a numeric vector will be expanded to:
            boost::multi_array<double, 2>.
        
Concrete class
            The class name is a C++ class, with no template arguments.
            If you specify MyStringVector for a string vector,
            the generated class will simply be MyStringVector.
          
            A concrete container class must be capable of containing 
            items of the specified type.
            
          If you specify MyStringVector for a numeric vector,
          the generated class will still be MyStringVector, 
          and your code will probably not compile.