我正在尝试为 C++ 中的 L-System 重写引擎的实现设计数据结构,但我似乎无处可去:(。
我需要存储一串符号(字符)。有几种类型的符号(由 LSystem 的字母表指定)。假设我们有类型“A”、“B”、“C”。现在每种类型的符号都可以有不同的参数。例如,类型 A 的符号将具有一定的距离,而符号 B 将具有角度。C 符号没有参数。然后字符串可能看起来像“ABAC”。
然后我需要遍历字符串并执行一些也与每种类型的符号相关的操作。“A”可以表示“画‘距离’长度的线”(距离是A的参数),B“转‘角度’度数”,C完成绘画。
我尝试为每个符号类型(SymbolA 类、SymbolB 类、SymbolC 类)创建类 Symbol 和一个子类,但我不知道如何创建字符串。我想避免类型转换和类似的东西。
请问有人有类似的问题或有可以帮助我的想法吗?