и минут 20 сидеть и тупить, не понимая в чём проблема, ведь всё же правильно... А потом когда находишь это равно= вместо == то у тебя нет радости от того, что ты нашёл эту ошибку, а наоборот, из уст вырывается матерное слово.
В С++ есть ошибка при компиляцию в DLL файлы. Например если в коде есть конструкция getGlobalBounds() - начинает выдавать ошибки ! Как только это убираешь все отлично компилируется 😁
На C++ с 1999 года. И что-то не могу вспомнить ни одной глупой ошибки. Писал и под 386, 486, P1, P2, P3, P4, PDC, PC2D, семейство Core ix, АМД, 8051 (там возможно просто C), mips32, mips64, Cortex M0-H7.
@@eugenenovikov671 так оператор ++ справа работает так: tmp = value; value = tmp + 1; return tmp; Тогда i = i++; должно быть таким: tmp = i; i = tmp + 1; i = tmp; Т.е. i меняется. А вот при i = ++i; уже изменилось бы. Всё однозначно, что не так?
@@thirdasian8541 у тебя выполняются два оператора: ++ и =. ++ увеличивает i на один и возвращает старое значение i. При вызове оператора = i поменяет значение с 4 обратно на 3. Если бы был код i = ++i; то i осталась бы равна четырём. Всё однозначно.
Если кому интернсно, вот код который должен был написать Евгений. Int * pt = new int; // выделение памяти под int ... delete pt; // освобождение памяти 😘😇🤗
результатом деления двух целых чисел является целое число. все знаки после запятой отбрасываются. даже если присвоить это значение переменной типа double, то результат по сути будет целым числом, приведенным к вещественному. например: int a = 1, b = 2; double c = a/b; cout
а еще интересный момент, что деление на 0 запрещено в целочисленной арифметике (приложение упадет), однако разрешено в вещественной, получится бесконечность
Перепутать операторы = и == в условии. Как же это бесит из-за невнимателлности.
и минут 20 сидеть и тупить, не понимая в чём проблема, ведь всё же правильно... А потом когда находишь это равно= вместо == то у тебя нет радости от того, что ты нашёл эту ошибку, а наоборот, из уст вырывается матерное слово.
if (1 == value) же давно придумали. Ещё ХЗ сколько веков назад.
@@assaissa Особенно когда справа и слева переменные)
Все. Ушли эти времени. "Не будет больше голландского сыра"©
Да вроде есть. Подорожал немного, но это мелочи.
Не поставить ;
ужос, про i=i++
А что такого? порядок действий:
i присваится её же значение, после присваивания увеличивает свое значение на 1
В С++ есть ошибка при компиляцию в DLL файлы. Например если в коде есть конструкция getGlobalBounds() - начинает выдавать ошибки ! Как только это убираешь все отлично компилируется 😁
как ты это узнал?
может в компиляторе дело?
@@arthurclark7353 в Visual Studio 13 делал, это самая стабильная версия была. Если писать проекты без движков.
Это видео можно использовать как рекламу Rust
Я не понимаю ничего
Вряд ли.
Этот коммент идеально описывает сообщнство rustard ов
А моя самая глупая ошибка это когда забываешь поставить точку с запятой после строки кода😂
На C++ с 1999 года. И что-то не могу вспомнить ни одной глупой ошибки. Писал и под 386, 486, P1, P2, P3, P4, PDC, PC2D, семейство Core ix, АМД, 8051 (там возможно просто C), mips32, mips64, Cortex M0-H7.
крутой
у меня тоже все ошибки исключительно умные )))
Я очень люблю смотреть Ваши ролики с рекламой этого эвента. Ну, просто потому что классно видеть, что умные люди расовый внешне.
Папа!
Спасибо за видео. Благодаря ему я понял, что не хочу писать на С++
Да тут описаны самые банальные ошибки начинающего...
Ничего серьёзного
Чета они совсем не похожи на программистов, а на актеров из какого-то фильма.
Особенно в 1:20. Не верю, что кто-то действительно может совершать такую ошибку, если пишет больше месяца.
@@cyanmargh Это боль на больших кодовых базах
а что i = i++ чем-то отличается в javascript или java? причём тут си++
Да, тоже смутило. В теории, i должен остаться тем же.
@@cyanmargh нет, оператор инкремента меняет значение на месте, как array.sort(), это не ошибка, это незнание
@@eugenenovikov671 так оператор ++ справа работает так:
tmp = value;
value = tmp + 1;
return tmp;
Тогда i = i++; должно быть таким:
tmp = i;
i = tmp + 1;
i = tmp;
Т.е. i меняется.
А вот при i = ++i; уже изменилось бы. Всё однозначно, что не так?
@@cyanmargh example
int i = 3;
i = i++:
inside it goes as:
3 = 3+1;
since it is a copy of the variable
@@thirdasian8541 у тебя выполняются два оператора: ++ и =. ++ увеличивает i на один и возвращает старое значение i. При вызове оператора = i поменяет значение с 4 обратно на 3. Если бы был код i = ++i; то i осталась бы равна четырём. Всё однозначно.
Если кому интернсно, вот код который должен был написать Евгений.
Int * pt = new int; // выделение памяти под int
...
delete pt; // освобождение памяти 😘😇🤗
Спасибо, генералиссимус😂
Такая база, работают в Яндексе вроде
А в чем собственно ошибка 1:19, кто ни будь прояснит или надо 13 лет в Яндекс работать?
результатом деления двух целых чисел является целое число. все знаки после запятой отбрасываются. даже если присвоить это значение переменной типа double, то результат по сути будет целым числом, приведенным к вещественному. например:
int a = 1, b = 2; double c = a/b; cout
@@WebMafia Понятно, спасибо!
а еще интересный момент, что деление на 0 запрещено в целочисленной арифметике (приложение упадет), однако разрешено в вещественной, получится бесконечность