【发布时间】:2021-01-23 22:09:51
【问题描述】:
老 C/C++ 程序员,我刚刚开始学习/玩方案,所以我的措辞可能不正确,但是...
假设我愿意:
(define x 42)
(define y (quote x))
现在使用 y 如何到达 42?
我认为这相当于(用 C 语言):
int x=42;
int* y=&x;
我想错了吗?如果不是,那么与 *y 等效的方案是什么?
【问题讨论】:
-
我还处于学习计划的折腾阶段。我确实理解方案中没有像 C 中那样的固有类型,但是由于可以将符号分配给变量,因此必须有一种方法来获取基础值吗?
-
这并不是符号的真正用途。让我们倒退一步:为什么你要这样做?解决这个实际问题比尝试改进这个不寻常的解决方案更有成效。
-
正如我所说,我正在开始学习计划的过程。当我读到符号时,它们让我觉得它们类似于指针,所以我尝试了上述定义序列来测试理论,但我无法找到任何方法来获取基础数据。因此,如果我理解您的响应符号和指针不类似?
-
Scheme 中没有(显式)指针,符号一点也不像指针!符号只是不可变的字符串。
-
好的。然后背对着头挠。谢谢你
标签: scheme symbols dereference