SA0023: Karmaşık dönüş değerleriPermalink

İşlemcinin basit bir kayıt defteri kopyası ile döndürülemeyen karmaşık dönüş değerlerini belirler. Buna ‎STRING‎ türündeki yapılar, diziler ve dönüş değerleri dahildir (kullanılan belleğin boyutundan bağımsız olarak).

Gerekçe: Bu bir performans uyarısıdır. Bir işlevin, yöntemin veya özelliğin sonucu olarak büyük değerler döndürülürse, işlemci kodu yürütürken bunları birden çok kez kopyalar. Bu, çalışma zamanı sorunlarına yol açabilir ve mümkün olduğunca kaçınılmalıdır. Performans, yapılandırılmış bir değeri ‎VAR_IN_OUT‎ olarak bir fonksiyona veya metoda geçirerek ve fonksiyon veya metodun içine doldurarak geliştirilebilir.

Önemliymiş: Orta

Örnek

TYPE LargeStructure :
STRUCT
	a : LINT;
	b : BOOL;
END_STRUCT
END_TYPE

FUNCTION Large_Return_Value_FUNC : LargeStructure   // SA0023

--> SA0023: Complex return values