有关风格的注记
对于不熟悉关联数组的程序员而言,采用标准库的map作为符号表似乎是一种作弊。这当然不是。标准库和其他库都是为了使用。一般来说,对于一个库的设计和实现所付出的努力,远远多于一个程序员为他手工做出的只为在一个程序里使用的代码片段。
请看计算器的代码,特使是第一个版本,我们可以看到这里并没有出现多少C风格的、低级的代码。许多传统的技巧细节都被用标准库类例如ostream、string和map(3.4节、3.5节3.7.4节、第17章)等取代了。
请注意,这里算术、循环以及赋值都比较少。这就是在那些并不直接操作硬件或者实现低级抽象的代码所应有的形式。
🔚