Vala中的通用功能

时间:2012-02-08 00:00:55

标签: function generics vala

我在Vala中编写了一个maximum()泛型函数。 但是,它没有编译。 这是:

T maximum<T>(T a, T b) {
    return a > b ? a : b;
}

void main() {
    stdout.printf("%d\n", maximum(10, 2));
}

我收到以下错误:

generics.vala:2.12-2.16: error: Relational operation not supported for types `T' and `T'

你知道如何修复这个函数来编译吗? 感谢。

1 个答案:

答案 0 :(得分:5)

当前的Vala不支持通用直接比较和各种其他操作。您可能希望使用并实现Gee.Comparable接口来改为使用compare_to()方法。