Предложение Метквотам. Разрешить использовать один знак равно в условиях.

 
Когда люди пишут условие, они часто забывают написать двойной знак равно.
if (a==2)
{
}
Хорошо было бы, если бы разрешалось использовать один знак равно.

Ведь если стоит оператор if , а за ним условие в скобках, то ясно, что это сравнение.
Легко программу научить понимать, что это сравнение, зачем же заставлять людей лишний знак равно писать?)
 
multiplicator:
Когда люди пишут условие, они часто забывают написать двойной знак равно.
Хорошо было бы, если бы разрешалось использовать один знак равно.

Ведь если стоит оператор if , а за ним условие в скобках, то ясно, что это сравнение.
Легко программу научить понимать, что это сравнение, зачем же заставлять людей лишний знак равно писать?)

if (b==(a=2)) { /** вот именно по этому, = и == это РАЗНЫЕ операторы и должны визуально отличаться **/ }

 
Maxim Kuznetsov:

if (b==(a=2))

блин, а у меня не получалось, я просто скобки не ставил.

Maxim Kuznetsov:

{ /** вот именно по этому, = и == это РАЗНЫЕ операторы и должны визуально отличаться **/ }


придется мучиться... )



"=" и "==" очень похожи, поэтому многие путаются.
я бы "равно" оставил для сравнений, а для присвоений вообще бы другой знак использовал.
...если бы писал свой идеальный язык программирования)

 
multiplicator:

"=" и "==" очень похожи, поэтому многие путаются.
я бы "равно" оставил для сравнений, а для присвоений вообще бы другой знак использовал. Например << . Это получается как стрелочка влево.
...если бы писал свой идеальный язык программирования)

Сдвиг влево

Двоичное представление x сдвигается влево на y разрядов; освобождающиеся справа разряды заполняются нулями.

x = x << y;

 
Fast528:

Сдвиг влево

Двоичное представление x сдвигается влево на y разрядов; освобождающиеся справа разряды заполняются нулями.

x = x << y;

всё занято! ))
 
multiplicator:
Когда люди пишут условие, они часто забывают написать двойной знак равно.
Хорошо было бы, если бы разрешалось использовать один знак равно.

Ведь если стоит оператор if , а за ним условие в скобках, то ясно, что это сравнение.
Легко программу научить понимать, что это сравнение, зачем же заставлять людей лишний знак равно писать?)

Чур меня от таких пожеланий !!! Не дай Один (из скандинавской мифологии) метаквотам такое взбредет))

 
Andrey Azatskiy:

Чур меня от таких пожеланий !!! Не дай Один (из скандинавской мифологии) метаквотам такое взбредет))

Не взбредёт, такое только с большого бодуна можно было придумать )))

 
Сергей Таболин:

Не взбредёт, такое только с большого бодуна можно было придумать )))

ну чтож вы так жестко. 
человек просто новичек, потому и выдвигает такие предложения )

 
multiplicator:

блин, а у меня не получалось, я просто скобки не ставил.


придется мучиться... )



"=" и "==" очень похожи, поэтому многие путаются.
я бы "равно" оставил для сравнений, а для присвоений вообще бы другой знак использовал.
...если бы писал свой идеальный язык программирования)

В R для присвоения используется <-, а в паскале :=

Так правильнее, конечно, но в си традиционно используется =

 
multiplicator:
Когда люди пишут условие, они часто забывают написать двойной знак равно.
Хорошо было бы, если бы разрешалось использовать один знак равно.

Ведь если стоит оператор if , а за ним условие в скобках, то ясно, что это сравнение.
Легко программу научить понимать, что это сравнение, зачем же заставлять людей лишний знак равно писать?)

И дополнение к этому примеру

bool a = c == d;
if(a) Print("c равно d");
else Print("нихрена не равно");
Как компилятор должен различать предложенное изменение???
 
Nikolay Khrushchev:

ну чтож вы так жестко. 
человек просто новичек, потому и выдвигает такие предложения )

Так я ж не про него ))) Я про то, что весьма сомнительно что разрабы все разом упьются настолько, что им в голову придёт нечто подобное ))))