【发布时间】:2012-05-22 06:52:12
【问题描述】:
我有以下地图结构:
std::map<std::pair<int, char>, int> transitions;
表示非确定性自动机的转换,每个都有2个整数和一个字符I,J和C,表示转换的状态,即转换从状态i到状态J,字符C。
0 0 a
0 1 a
1 1 b
1 2 c
1 3 c
3 4 d
4 4 d
4 5 d
我想插入它。我该怎么办?
我想过做以下事情:
typedef map<pair<int, char>, int> transitions;
for (j=0; j<numberTransitions;j++)
{
cin>> stateOrigin>>stateDestination>>transitionCharacter;
transitions.insert(transitions::value_type(std::make_pair(stateOrigin,transitionCharacter), stateDestination ));
}
我不认为这是这样做的方法,我是使用地图库的新手。
【问题讨论】:
-
那么,当你尝试这个时发生了什么?
-
@OliCharlesworth 编译器告诉我以下内容:C:\testMap.cpp | |在函数`int main()'中:|第 30 行:错误:“。”之前的预期不合格 ID令牌 |第 30 行是我尝试插入的位置。
标签: c++ dictionary insert mapping