2012-02-08 14 views
5

में जेनेरिक फ़ंक्शन मैंने वैला में अधिकतम() जेनेरिक फ़ंक्शन लिखा था। हालांकि, यह संकलित नहीं करता है। संदेश यह है:वैला

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

यह संकलित करने के लिए सक्षम होने के लिए इस समारोह तुम्हें पता है मैं कैसे ठीक कर सकते है:

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

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

मैं निम्न त्रुटि मिल गया? धन्यवाद।

उत्तर

5

जेनेरिक प्रत्यक्ष तुलना और विभिन्न अन्य संचालन वर्तमान वाला द्वारा समर्थित नहीं हैं। आप इसके बजाय तुलना_to() विधि का उपयोग करने के लिए Gee.comparable इंटरफ़ेस का उपयोग और कार्यान्वित करना चाह सकते हैं।