COM has a number of data types beyond the numeric types available in the C and C++ languages. Three such data types are the
VARIANT data type, interface pointers, and the
SAFEARRAY data type. ATL provides useful classes that encapsulate each of these data types and their special idiosyncrasies.
CComVariant class is a smart
VARIANT class. The class implements the special initialization, copy, and destruction semantics of the COM
VARIANT data type.
CComVariant instances can be used in most, but not all, of the places you would use a
CComGITPtr classes are smart pointer classes. Smart pointer classes are definitions of objects that “act” ...