Size: a a a

2020 August 01

ГС

Георгий Седометов... in rust_offtopic
в случае Option у тебя либо есть значение, либо его нет. Отсутствие значения должно быть явно обработано. Попытка использования без проверки не проходит тайпчекинг. Ты просто физически не сможешь проглотить ошибку
источник

ГС

Георгий Седометов... in rust_offtopic
Т-34 85
гарантирует, что ты не забудешь, что функция может выплюнуть ошибку
ну выплюнет, и что? Я всё ещё могу воспользоваться значением аут-параметра, а оно непонятно какое после ошибки
источник

Т8

Т-34 85 in rust_offtopic
Георгий Седометов
в случае Option у тебя либо есть значение, либо его нет. Отсутствие значения должно быть явно обработано. Попытка использования без проверки не проходит тайпчекинг. Ты просто физически не сможешь проглотить ошибку
а при таком подходе можешь, если осознанно захочешь
источник

p

polunin.ai in rust_offtopic
напомните пж как настраивать табнайн? там нужно какую-то опцию включить чтобы он подсвечивал нормально, забыл какую
источник

Т8

Т-34 85 in rust_offtopic
Георгий Седометов
ну выплюнет, и что? Я всё ещё могу воспользоваться значением аут-параметра, а оно непонятно какое после ошибки
но ты будешь понимать, что ты не проверил, хотя надо бы
источник

Т8

Т-34 85 in rust_offtopic
и там не что угодно будет, а дефолтное (документированное) значение
источник

H

Hirrolot in rust_offtopic
и потом читать талмуды документации
источник

H

Hirrolot in rust_offtopic
нет спасибо лучше в типы посмотрю
источник

ГС

Георгий Седометов... in rust_offtopic
Т-34 85
но ты будешь понимать, что ты не проверил, хотя надо бы
как я это пойму? Вот я пишу код, который вызывает функцию, которая возвращает ошибку, кладу ошибку в переменную. Тут меня отвлекает коллега, я переключаюсь на другую задачу. Через какое-то время возвращаюсь к этому коду, и забываю, что надо обработать ошибку. Почему вообще я должен об этом помнить, а не компилятор должен говорить, что ошибка не обработана?
источник

Т8

Т-34 85 in rust_offtopic
Hirrolot
и потом читать талмуды документации
а зачем? Если ошибка, то вообще не трогать результат
источник

H

Hirrolot in rust_offtopic
Т-34 85
а зачем? Если ошибка, то вообще не трогать результат
а если мне нужно значение ошибки?
источник

ГС

Георгий Седометов... in rust_offtopic
Т-34 85
а зачем? Если ошибка, то вообще не трогать результат
а зачем этот результат вообще есть, если его нельзя трогать?
источник

AZ

Alex Zhukovsky in rust_offtopic
Т-34 85
он не даёт просто вызвать функцию, надо результат куда-то применить. А если ты в переменную запишешь, то ещё и эту переменную надо где-то обработать
и кто это проверяет? гцц? шланг?
источник

AZ

Alex Zhukovsky in rust_offtopic
я в стандарте такого не помню
источник

AZ

Alex Zhukovsky in rust_offtopic
хотя я его особо не знаю
источник

AZ

Alex Zhukovsky in rust_offtopic
Т-34 85
в шарпе можно на месте вызова функции сразу и объявить переменную, в которую запишется. Вот бы такое в кресты
аут параметры не нужны если у тебя есть возможность вернуть пару
источник

H

Hirrolot in rust_offtopic
Alex Zhukovsky
и кто это проверяет? гцц? шланг?
в стандарте нет, но есть в расширениях
источник

AZ

Alex Zhukovsky in rust_offtopic
вот скажи чем bool TryParse(string s, out value) лучше чем (bool, int) TryParse(string s)?
источник

H

Hirrolot in rust_offtopic
если мы о си
источник

Т8

Т-34 85 in rust_offtopic
Георгий Седометов
как я это пойму? Вот я пишу код, который вызывает функцию, которая возвращает ошибку, кладу ошибку в переменную. Тут меня отвлекает коллега, я переключаюсь на другую задачу. Через какое-то время возвращаюсь к этому коду, и забываю, что надо обработать ошибку. Почему вообще я должен об этом помнить, а не компилятор должен говорить, что ошибка не обработана?
тогда у тебя будет будет записанная, но прочтённая переменная. А это варнинг или ошибка компиляции.

Ну, и даже если ты прочитал, всё равно ты вернулся и увидел, на чём остановился. Или когда будешь проводить ревью своего кода. Или когда тестишь
источник