我有一张名为 nfa 的地图(见下文)
map<string, NFANode*> nfa;
nfa 充满了 NFANode 对象。(见下文)
class NFANode {
public:
string label;
map<string,vector<NFANode*> >tr;
bool accepting;
bool starting;
NFANode(string s, bool a, bool x){
accepting = a;
label = s;
starting = x;
}
};
在每个对象内部都有另一个映射调用 tr ,在 tr 内部有一个带有信息的向量。我正在尝试访问向量以打印出向量的每个元素,但无法弄清楚如何。我一直在尝试使用没有运气的迭代器。
map<string, NFANode*>::iterator nfaIt;
for (nfaIt = nfa.begin(); nfaIt != nfa.end(); ++nfaIt){
cout << "content of tr are: " << nfaIt->second->tr->second << endl;
}
任何帮助将不胜感激。