IUnknown Types 

www.madshi.net

Some variations around the "IUnknown" type:

type
  TPIUnknown   = ^IUnknown;

  TAIUnknown   = array [0..maxInt shr 2-1] of IUnknown;
  TPAIUnknown  = ^TAIUnknown;

  TDAIUnknown  = array of IUnknown;
  TPDAIUnknown = ^TDAIUnknown;

Please note, that allocating and freeing "TPIUnknown" or "TPAIUnknown" variables is a bit dangerous. You have to know exactly what you're doing. So please look at the examples in the String Types description. What I've said there about allocating/freeing is true for every dynamic type, so it's also true for "IUnknown".