我正在编写一个拼写检查程序,它实现了一个粗略的版本(为简单起见)来索引拼写错误的单词。
目标:在迭代保存字典中所有单词的SET时,会生成soundex代码,然后插入到Multimap中,其中soundex是关键字,而字典中的单词是关联数据。
ISSUE:For循环迭代一次后,程序崩溃。我已将其缩小到实际插入本身的问题。
注意:d是一个包含Multimap的指针。 我的multimap是sndxMap;
CODE:
ReplacementChooser::ReplacementChooser(const Dictionaries& dictionary)
{
//loop through the dictionary, giving the word to extendedsoundex
for(Dictionaries::iterator it = dictionary.begin(); it!=dictionary.end();it++)
{
string code = extendedSoundex(*it,-1);
d->sndxMap.insert(multimap<string,string>::value_type(code,*it)); //crashes
}
}