2016-07-04 59 views
1

在瓦拉,是有可能声明函数这样未定义类型VALA

void do_something(object foo) { } 

其中object代表任何可能的类型,这样我可以例如同时通过一个整数和一个字符串这个函数?

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

回答

5

您可以使用一个通用的,如果你想:

void do_something<T>(T foo) {} 

但是你有什么打算和你不能使用的值呢?

如果要保存它供以后重建,你可以使用一个GLib.Value将被编译器自动包装:

void do_something(Value foo) {}