Баг компилятора при параметре шаблона = void* - страница 10

 
Ilya Malev:
Что касается того, что "нормальные программеры помнят приоритеты операций С++ как таблицу умножения",
Такого тезиса никто не озвучивал. Я сам пользуюсь закладкой в Документации
 
fxsaber:

Именно! Ни разу не профи, мне подобные предупреждения 100 раз помогали.

Тоже не профи, но мне подобные предупреждения не раз мешали тем, что среди десятков (а иногда и сотен) таких лишних предупреждений терялись действительно важные и нужные

И непонятно какие у Вас могут быть предупреждения, если Вы везде скобки расставляете? А если это касалось других случаев, то не нужно все смешивать в одну кучу

 
A100:

Так чтобы эту концепцию можно было реализовать в компиляторе. Никто не запрещает ставить лишние скобки. Вопрос в лишних предупреждениях

ну в студии это настраивается уровнем.

и на самом деле никто не мешает эти предупреждения убрать изменив код так чтобы компилятору понравилось

 
TheXpert:

ну в студии это настраивается уровнем.

и на самом деле никто не мешает эти предупреждения убрать изменив код так чтобы компилятору понравилось

Мешает, потому что тогда появляются лишние скобки. А вот ставить лишние скобки любителям этого дела как раз никто не мешает, а главное - всех это устроило бы

Сомневаюсь, что это настраивается в студии - потому что там нет лишних предупреждений о якобы забытых скобках (по крайней мере по умолчанию), а значит нет предмета настройки

 
A100:

Я не возражаю. Только пусть эти предупреждения останутся в старом\новом MQL4.

Так они значительной частью и остаются

void OnStart()
 {
  int a=0,b=0,c=0,d=0,e=0,f=0;
  a=b|d/e^f|a^b&d^e%f|c;
 }

В мкл4 ругается на все подряд, в мкл5 только на операции << и >> что довольно логично, поскольку логика их перегрузки чаще всего будет сильно отличаться от логики, исходя из которой им присваивали приоритет. Мне эти предупреждения неоднократно помогали или как минимум не раздражали сильно. Ну и логических операций, определяющих логику кода && и || которые по хорошему и так и так должны быть разграничены скобками...

 
A100:

Тоже не профи, но мне подобные предупреждения не раз мешали тем, что среди десятков (а иногда и сотен) таких лишних предупреждений терялись действительно важные и нужные

И непонятно какие у Вас могут быть предупреждения, если Вы везде скобки расставляете? А если это касалось других случаев, то не нужно все смешивать в одну кучу

Обычно происходит так, что приходится быстро поправить какое-то условие. Например, ошибся в условии, где прописано в одном месте &&, а надо было его заменить на ||. Поправил и нажал F7. И тут сразу же предупреждение. Смотрю внимательно и вижу, что действительно, результат с текущими изменениями не такой, как предполагал. Правлю -все норм. Т.е. компилятор очень сильно выручил своим сообщением.


Если же у Вас огромное количество предупреждений, пишите код аккуратней. Или Вы не правите их принципиально, доказывая машине, что она не права?

 
A100:

Мешает, потому что появляются лишние скобки. А вот ставить лишние скобки любителям этого дела как раз никто не мешает, а главное - всех это устроило бы

Сомневаюсь, что это настраивается в студии - потому что там нет лишних предупреждений о якобы забытых скобках (по крайней мере по умолчанию), а значит нет предмета настройки

Полностью согласен. Раз уж назвался программером, будь добр, учи приоритеты операций, по крайней мере помни, что они есть. Тут недавно попросили робота дописать, так там еще init() и start(), а на вопрос когда им это писали, ответили, что неделю назад. Так, что "кодеры" те еще бывают, но для таких лишние предупреждения оставлять не стоит.

 
Vladimir Simakov:

Полностью согласен. Раз уж назвался программером, будь добр, учи приоритеты операций, по крайней мере помни, что они есть. Тут недавно попросили робота дописать, так там еще init() и start(), а на вопрос когда им это писали, ответили, что неделю назад. Так, что "кодеры" те еще бывают, но для таких лишние предупреждения оставлять не стоит.

Знания приоритетов никакого отношения к предупреждениям не имеет. Пишу код потихоньку, и программером себя не именую.

 
A100:

Сомневаюсь, что это настраивается в студии

есть в свойствах проекта. у нас раньше на одном из проектов было железное правило - на релизных версиях фиксить все предупреждения включая некоторые параноидальные W4

https://docs.microsoft.com/en-us/cpp/build/reference/compiler-option-warning-level?view=vs-2017

как по мне - чем больше предупреждений, тем лучше, если они хоть как-то обоснованы и их можно отключать

 
fxsaber:

Если же у Вас огромное количество предупреждений, пишите код аккуратней. Или Вы не правите их принципиально, доказывая машине, что она не права?

Я использую в основном С++ совместимый код (а часто даже единый файл). В C++ их нет, а лишние скобки как уже заметили здесь затрудняют понимание

Причина обращения: