在多地图

时间:2018-01-25 14:25:35

标签: c++

我有一个看起来像这样的字符串:

let main = 
    let value = 8+2

我需要扫描它才能得到这个:

Type: keyword
Value: "let"

Type: name
Value: "main"

Type: symbol
Value: "="

Type: keyword
Value: "let"

Type: name
Value: "value"

Type: symbol
Value: "="

Type: number
Value: 8

Type: symbol
Value: "+"

Type: number
Value: 2

我使用了多图来做这件事,我不会发布代码,因为它太长了,但基本上它会检查每个单词,并将它们插入我的multimap中。 它有效,所有单词都在multimap中,但它没有按顺序出现:

Type: keyword
Value: "let"

Type: keyword
Value: "let"

Type: name
Value: "main"

Type: name
Value: "value"

Type: number
Value: 8

Type: number
Value: 2

Type: symbol
Value: "="

Type: symbol
Value: "="

Type: symbol
Value: "+"

我尝试过其他类型的句子和其他类型的Type,但问题总是一样的: 项目似乎按顺序排列,但不一定在它们应该出现的位置。 我不知道这是否非常清楚。

你能帮我找一个解决方案:)?

PS:对不起该消息的长度,但我更倾向于在我的解释和示例中说清楚。

0 个答案:

没有答案