Сообщение Re[5]: Oberon vs C# от 12.04.2024 16:55
Изменено 12.04.2024 16:56 Serginio1
Re[5]: Oberon vs C#
Здравствуйте, _FRED_, Вы писали:
S>>Ух ты еще и делегат пришпандорил!
_FR>
_FR>Это не делегат, а обычная локальная функция.
То что выше это локальная функция, которую я предложил вместо.
https://stackoverflow.com/questions/40943117/local-function-vs-lambda-c-sharp-7-0
Смотри TestLambda
S>>Ух ты еще и делегат пришпандорил!
_FR>
S>> Swap(ref a[j + 1], ref a[j]);
S>>//[MethodImpl(MethodImplOptions.AggressiveInlining)] можно попробовать. Хотя и так должен быть инлайнинг
S>> void Swap(ref double x, ref double y)
_FR>
_FR>Это не делегат, а обычная локальная функция.
То что выше это локальная функция, которую я предложил вместо.
static void Sort(double[] a)
{
var Swap = (ref double x, ref double y) =>
{
var t = x;
x = y;
y = t;
};
for (var i = 0; i < a.Length; i++)
for (var j = 0; j < a.Length - 1 - i; j++)
if (a[j + 1] < a[j])
Swap(ref a[j + 1], ref a[j]);
}
https://stackoverflow.com/questions/40943117/local-function-vs-lambda-c-sharp-7-0
Смотри TestLambda
Re[5]: Oberon vs C#
Здравствуйте, _FRED_, Вы писали:
S>>Ух ты еще и делегат пришпандорил!
_FR>
_FR>Это не делегат, а обычная локальная функция.
То что выше это локальная функция, которую я предложил вместо.
Там явно проблема с инлайнингом.
https://stackoverflow.com/questions/40943117/local-function-vs-lambda-c-sharp-7-0
Смотри TestLambda
S>>Ух ты еще и делегат пришпандорил!
_FR>
S>> Swap(ref a[j + 1], ref a[j]);
S>>//[MethodImpl(MethodImplOptions.AggressiveInlining)] можно попробовать. Хотя и так должен быть инлайнинг
S>> void Swap(ref double x, ref double y)
_FR>
_FR>Это не делегат, а обычная локальная функция.
То что выше это локальная функция, которую я предложил вместо.
static void Sort(double[] a)
{
var Swap = (ref double x, ref double y) =>
{
var t = x;
x = y;
y = t;
};
for (var i = 0; i < a.Length; i++)
for (var j = 0; j < a.Length - 1 - i; j++)
if (a[j + 1] < a[j])
Swap(ref a[j + 1], ref a[j]);
}
Там явно проблема с инлайнингом.
https://stackoverflow.com/questions/40943117/local-function-vs-lambda-c-sharp-7-0
Смотри TestLambda