我正在将文本文件从一组定义转换为另一组定义,我通过编写一个小解析器来解决问题.一旦我确定了一个符号,我最终会在一个case语句中决定调用哪个转换例程,具体取决于用户选择的输入选项是什么(这些代码表示不同机器上的不同内容).
我基本上采用多种输入格式并将它们转换为单个输出格式,超过大约400个唯一符号.
问题在于,随着这个项目从几个简单的翻译,每个都在自己的头文件中,变成十几个或更多输入格式,维护起来变得很麻烦.每个头文件都包含一个生成相关输出的monster switch语句.这一切都有效,但看起来真的很笨拙.
我是否可以通过为每个输入机器创建映射表(即包含输入和输出符号的2d数组)并使用将表作为输入的公共转换例程来解决可维护性问题?我应该考虑更好的设计吗?
| 归档时间: |
|
| 查看次数: |
111 次 |
| 最近记录: |