堆栈机器在C ++代码中的使用有多常见?

时间:2013-09-09 09:56:11

标签: c++ stack-machine

我正在查看一些C ++代码,它包含一个用于编写脚本的堆栈机器。我在几年前学过C ++,但从未在我的日常工作中使用它,所以如果这是常见做法,或者仅在某些非常具体的情况下使用,我没有任何真正的想法?

1 个答案:

答案 0 :(得分:1)

如果需要评估2 + 3 * 7x = a + b / sin(c)等表达式,那么面向堆栈的方法将非常有效。

我不会说它过于普遍。我知道Emacs是围绕一个lisp解释器构建的,而后者通常被实现为堆栈机器,我不确定我知道任何使用这种方法的东西。但这并不是说在某些领域这不常用。

观察/思考它我也认为Java VM本质上是一个堆栈机器,PostScript(以及扩展PDF解释器,因为该概念基于简化的PostScript格式)。