170 похожих чатов

Типа эта срань ДО вызова конструктора наследника, или после?

30 ответов

19 просмотров

кто бы знал. Я до сих пор не знаю как они проблему сравнения рекордов решили при наличии наследования

Ayrat Hudaygulov
кто бы знал. Я до сих пор не знаю как они проблему...

без запуска кода, попробуйте в начале подумать что вы тут ожидаете using System; var pointA = new Point(1,1); var pointB = new Point(2,2); var coloredPointA = new ColoredPoint(1,1,5); Console.WriteLine(pointA == pointB); Console.WriteLine(pointA == coloredPointA); Console.WriteLine(pointA == (Point)coloredPointA); Console.WriteLine(ArePointsTheSame(pointA, coloredPointA)); record Point(int x, int y); record ColoredPoint(int x, int y, int color): Point(x, y); static bool ArePointsTheSame(Point a, Point b) => a == b;

Ayrat Hudaygulov
без запуска кода, попробуйте в начале подумать что...

ожидаю что первая строчка вернёт false, а от остальных ничего не ожидаю

Ayrat Hudaygulov
без запуска кода, попробуйте в начале подумать что...

удачи дебажить последнюю функцию, которая валидно принимает два поинта и идёт нахуй на их законном сравнении

Дмитрий
ожидаю что первая строчка вернёт false, а от остал...

я ожидал честно говоря хз чего. Экспешна на сравнении разных типов чтобы хотя бы не давать UB? не уверен даже

Ayrat Hudaygulov
всё False

а точно, там же точки а и б разные

Olzhas Biseuv
а точно, там же точки а и б разные

ну это ладно. Вот что делать с функцией, которая принимает два поинта, сравнивает их и идёт нахуй на равных поинтах?

Ayrat Hudaygulov
ну это ладно. Вот что делать с функцией, которая п...

что делать если у тебя есть функция принимает 2 object? и ты передашь туда 2 одинаковых числа?

Ilya Chernoudov
что делать если у тебя есть функция принимает 2 ob...

У меня рекорды имеют семантику структурного сравнения

Ayrat Hudaygulov
я ожидал честно говоря хз чего. Экспешна на сравне...

от не-sealed классов ожидать конкретной работы виртуальных методов это странно

Дмитрий
от не-sealed классов ожидать конкретной работы вир...

Ну тогда надо отказываться от структурного сравнения. Или ОБОЖЕ запрещать наследование рекордов

Ilya Chernoudov
всё так, и твой рекорд это данные + тип

ниразу не видел, чтобы в дотнете 2 объекта разного типа возвращали true при сравнении

Ilya Chernoudov
ниразу не видел, чтобы в дотнете 2 объекта разного...

Но у меня функция на двух структурно сравниваемых рекордах оперирует

Ilya Chernoudov
ниразу не видел, чтобы в дотнете 2 объекта разного...

можно переопределить метод так, который тип будет проверять и сравнивать

Ilya Chernoudov
помогу тебе sealed record Point();

Я помню этот аргумент ещё с нашего спора про STJ Просто добавь атрибутов! Как я их добавлю в 3рд пати либу

Ayrat Hudaygulov
без запуска кода, попробуйте в начале подумать что...

а это хороший вопрос на собесе, чтобы узнать насколько хорошо знает человек платформу

Ayrat Hudaygulov
Ну тогда надо отказываться от структурного сравнен...

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

Olzhas Biseuv
а это хороший вопрос на собесе, чтобы узнать наско...

и если человек отвечает что-то кроме "я не ебу" отказывать в оффере либо по причине неправильно, либо по причине илья

Ayrat Hudaygulov
Я помню этот аргумент ещё с нашего спора про STJ П...

это всё таки проблема либы, тот кто писал мог и на F# хуйни наворотить

ну если это в спеке есть почему и нет, но и вопрос так на прощупать, чем реально что-то узнавать)

Olzhas Biseuv
ну если это в спеке есть почему и нет, но и вопрос...

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

Olzhas Biseuv
ну если это в спеке есть почему и нет, но и вопрос...

Ну такое. Лучше попросить человека написать что нибудь

Vlæd Zá
Ну такое. Лучше попросить человека написать что ни...

хз, Я думаю интересно посмотреть размышления, чем сухо какой-то дефолтный код, или алгоритмы

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Добрый день. Хочу сделать отрисовку по команде на панели. Почему-то рисуется только при втором вызове. С чем может быть связано, не подскажете? procedure TForm1.FormDblClick(...
Kirill Filippenok
20
Всем доброго дня! Подскажите может кто использовал связку Pagebuilder + Clientsetting. Сами параметры с типом pagebuilder в модуле Clientsetting работают нормально, можно такж...
Александр Добриков
12
А почему в си некоторые вещи работают с двойными кавычками некоторые с одинарными? Нельзя было все сделать с одними или чтоб работало с разными? например чтоб выводить строки ...
.
15
Всем привет! Нужен совет от опытных. Переношу свой проект с Делфи 10.2 Токио на Лазарус 3.2 установленный через инсталлятор fpcupdeluxe-x86_64-win64. При импортировании проект...
Дмитрий Завгородний
7
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Всем привет! procedure TForm1.FormCreate(Sender: TObject); type TStartEnd = record S: Byte; E: Byte; end; var a, b: TStartEnd; begin {1} a.S := 1; {2} a.E := 2; ...
Руслан Михайлович
10
Всем привет!) я тут новенький и пытаюсь освоить evolution методом тыка. У меня при переходе между папками файлов выскакивают вот такие уведомления Можете подсказать как их от...
Диман Samoed
10
Какого хера? /Sources/App/Modules/User/Models/UserLinkApple.swift:21:20: warning: stored property '_id' of 'Sendable'-conforming class 'UserLinkApple' is mutable @ID(...
Alexander Sherbakov
14
Карта сайта