خطأ "Not enough information to infer parameter T" في Kotlin عند العمل مع Android 8.0
```html
مرحبًا، الزملاء! أنا مطور Kotlin مبتدئ، أكتب أول تطبيق لي لنظام Android. واجهت خطأ لا أستطيع التغلب عليه منذ اليوم الثاني. أستخدم Android 8.0 (Oreo) كواجهة برمجة تطبيقات مستهدفة.
لدي دالة بسيطة يجب أن تقوم بتحميل البيانات من SharedPreferences وإرجاعها بالنوع المطلوب. إليك الكود الخاص بي:
```kotlin
fun getFromPrefs(key: String, default: T): T {
val prefs = PreferenceManager.getDefaultSharedPreferences(this)
return when (default) {
is String -> prefs.getString(key, default) as T
is Int -> prefs.getInt(key, default) as T
is Boolean -> prefs.getBoolean(key, default) as T
else -> default
}
}
// استدعاء الدالة
val name: String = getFromPrefs("user_name", "default_name")
val age: Int = getFromPrefs("user_age", 0)
```
لكن المترجم يعطي خطأ: "Not enough information to infer parameter T". أفهم أن المشكلة تتعلق باستنتاج النوع، لكنني لا أفهم لماذا لا يستطيع Kotlin استنتاجه بنفسه.
```