解释器模式:作用于某种数据结构中的各元素的操作分离出来封装成独立的类,使其在不改变数据结构的前提下可
给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的例子。
在控制小车移动的例子中,可以将小车的移动指令(如向上、向下、向左、向右)定义为一个简单的“语言”,并为每种指令创建一个解释器。下面是一个简单的C++实现,用于解释和执行这些指令。
首先,定义一个抽象表达式类Expression
,它有一个纯虚函数interpret
,用于解释和执行指令。
1 | #include <iostream> |