将 GLib.Array 转换为内置数组

Mar*_*ius 2 glib vala

假设我有 aGLib.Array<Item?>并想将其转换为 a Item[],我将如何在 Vala 中做到这一点?

nem*_*equ 5

首先,除非您需要与现有代码的互操作性,否则不要使用GLib.Array. 使用GLib.GenericArray,正确使用更容易,错误使用更难。

GLib.Array.data是一个常规数组(Item?[]在您的情况下),原样GLib.GenericArray.data,因此您可以使用它。如果您将它分配给一个拥有的变量,Vala 将创建一个副本。