我有一个在面向对象的编程范例中设计的堆栈过程,我的堆栈中的一个嵌套过程是一个打印。由于我的堆栈实际上是一个列表,我可以通过调用全局变量my-stack轻松打印它,但我不想将它打印为列表,我想将它作为堆栈打印在另一个上面,有办法吗?
(define (print)
(define (print-helper stack)
(if (empty?)'()
(print-helper (cdr stack))
))
(print-helper my-stack))
答案 0 :(得分:0)
如果它是一个堆栈,我们想要打印最后添加的元素。这应该可以解决问题:
(define (print)
(define (print-helper stack)
(cond ((empty? stack) 'done)
(else
(print-helper (cdr stack))
(display (car stack))
(newline))))
(print-helper my-stack))