Информация об изменениях

Сообщение [Ann, VS 2015 RC] Tadpole operators от 26.05.2015 8:32

Изменено 26.05.2015 8:37 Sinix

Всем известный Реймонд Чен (который The Old New Thing блог, также рекомендую великолепные переводы от gunsmocker)...

Так вот, этот человек и пароход искренне делится со своими читателями новым инсайтом! Та-дамм, The tadpole operators:
#define __ENABLE_EXPERIMENTAL_TADPOLE_OPERATORS

using System;

class Program
{
    static void Main()
    {
        var x = 2;
        Console.WriteLine(~-x); // x-1
        Console.WriteLine(-~x); // x+1

        Console.Write("Done.");
        Console.ReadKey();
    }
}

Штука экспериментальная, не забудьте про дефайн!
Зачем оно надо? Ну, во-первых стандартный ++ оператор страдает от широко известной i--+--i problem, во-вторых, в связи с популярностью ФП операторы с побочными эффектами как-то совсем не комильфо.

Причём тут шарп, если в оригинальном топике речь про c++? Ну, авторам оччень нравится эта фишка, так что они в свободное время продавили её в несколько других языков.


P.S. На сегодня фичу официально не объявляли, как и предыдущую
Автор: Sinix
Дата: 03.04.15
так что не палите контору

P.P.S. А, да! Товарищи члены клуба элитных программистов
Автор: SaprXM
Дата: 22.03.15
! Не забываем про членские взносы, можно постами.
Всем известный Реймонд Чен (который The Old New Thing блог, также рекомендую великолепные переводы от gunsmocker)...

Так вот, этот человек и пароход искренне делится со своими читателями новым инсайтом! Та-дамм, The tadpole operators:
#define __ENABLE_EXPERIMENTAL_TADPOLE_OPERATORS

using System;

class Program
{
    static void Main()
    {
        var x = 2;
        Console.WriteLine(~-x); // x-1
        Console.WriteLine(-~x); // x+1

        Console.Write("Done.");
        Console.ReadKey();
    }
}

Штука экспериментальная, не забудьте про дефайн!
Зачем оно надо? Ну, во-первых стандартный ++ оператор страдает от широко известной i++-++i problem (из-за досадного бага в компиляторе выражение транслируется в константу, можете сами проверить).
Во-вторых, в связи с популярностью ФП операторы с побочными эффектами как-то совсем не комильфо.

Причём тут шарп, если в оригинальном топике речь про c++? Ну, авторам оччень нравится эта фишка, так что они в свободное время продавили её в несколько других языков.


P.S. На сегодня фичу официально не объявляли, как и предыдущую
Автор: Sinix
Дата: 03.04.15
так что не палите контору

P.P.S. А, да! Товарищи члены клуба элитных программистов
Автор: SaprXM
Дата: 22.03.15
! Не забываем про членские взносы, можно постами.