本文介绍了方案传递引用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在scheme中通过引用传递变量?

How can I pass a variable by reference in scheme?

我想要的功能示例:

(define foo
  (lambda (&x)
    (set! x 5)))

(define y 2)

(foo y)

(display y) ;outputs: 5

另外,有没有办法通过引用返回?

Also, is there a way to return by reference?

推荐答案

参见 http://community.schemewiki.org/?scheme-faq-language 问题有没有办法模拟按引用调用?".

See http://community.schemewiki.org/?scheme-faq-language question "Is there a way to emulate call-by-reference?".

总的来说,我认为这与方案的功能性质相悖,因此可能有更好的方法来构建程序以使其更像方案.

In general I think that fights against scheme's functional nature so probably there is a better way to structure the program to make it more scheme-like.

这篇关于方案传递引用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-16 08:30