Различие между eq? и = в Схеме?

Вы также можете использовать

lblExamlple.ForeColor = System.Drawing.Color.FromArgb(0,255,0);
6
задан Eli Barzilay 8 June 2010 в 21:11
поделиться

3 ответа

= сравнивает числа. экв? проверяет, представляют ли параметры один и тот же объект данных в памяти. экв? должен работать во втором случае, поскольку он тестирует так же, как eq? но тестирует примитивы специально. Подробнее о предикатах эквивалентности в схеме здесь .

9
ответ дан 8 December 2019 в 14:46
поделиться

Я предполагаю, что, поскольку

экв? оценивается как #f, если только его параметры представляют одни и те же данные объект в памяти;

и

Схема хранит неточные числа (1.1) отличается от точных чисел (1)

Два аргумента 1.1 не находятся в одном и том же месте в памяти и возвращают #f для уравнения?

Ссылка на Википедию

3
ответ дан 8 December 2019 в 14:46
поделиться

первое отличие: eq? работает с любой парой значений, а = работает с любым количеством чисел.

есть несколько других предикаты эквивалентности . Большинство из них принимают только два параметра. = определено в главе «числа»

1
ответ дан 8 December 2019 в 14:46
поделиться
Другие вопросы по тегам:

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