Всем известный Реймонд Чен (который
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
! Не забываем про членские взносы, можно постами.