2012-02-08 11 views
5

私はValaにmaximum()generic関数を書きました。 ただし、コンパイルされません。 ここにある:Valaの汎用関数

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' 

あなたは、私はそれをコンパイルできるようにするには、この機能を修正することができます知っていますか?おかげさまで

答えて

5

一般的な直接比較やその他のさまざまな操作は、現在のValaではサポートされていません。代わりにcompare_to()メソッドを使用するには、Gee.Comparableインターフェイスを使用し実装することをお勧めします。