2012-02-08 26 views
5

Tôi đã viết hàm tổng quát tối đa() trong Vala. Tuy nhiên, nó không biên dịch. Ở đây là:Chức năng chung trong Vala

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

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

Tôi đã nhận lỗi sau:

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

Bạn có biết làm thế nào tôi có thể sửa chữa chức năng này để có thể biên dịch nó? Cảm ơn.

Trả lời

5

So sánh trực tiếp chung và các hoạt động khác không được hỗ trợ bởi Vala hiện tại. Bạn có thể muốn sử dụng và triển khai giao diện Gee.Comparable để sử dụng phương thức compare_to() thay thế.

Các vấn đề liên quan