vala 中的未定义类型

Undefined types in vala

在 Vala 中,是否可以像这样声明一个函数

void do_something(object foo) { }

其中 object 代表任何可能的类型,这样我就可以将整数和字符串都传递给此函数?

do_something("Foo Bar");
do_something(1234);

如果需要,您可以使用泛型:

void do_something<T>(T foo) {}

但是你打算用一个你不能使用的值做什么?

如果你想存储它以供以后重构,你可以使用一个GLib.Value,它会被编译器自动打包:

void do_something(Value foo) {}