public ClikeStringArray(int num, int stringCapacity)
{
_nativeArray = Marshal.AllocHGlobal((num + 1) * IntPtr.Size);
_nativeItems = new List<IntPtr>();
for (int i = 0; i < num; i++)
{
IntPtr item = Marshal.AllocHGlobal(stringCapacity);
Marshal.WriteIntPtr((IntPtr)((int)_nativeArray + (i * IntPtr.Size)), item);
_nativeItems.Add(item);
}
Marshal.WriteIntPtr((IntPtr)((int)_nativeArray + (num * IntPtr.Size)), IntPtr.Zero);
}