QSet让我纠结了,谁能帮帮我
QSet<Line2P>::ConstIterator ret = m_arrResultLine.insert( Line2P(allNodesIt[k] , allNodesIt[k+1] , tan(dAng) ) );QSet<DWORD>::Iterator it;
for ( it = m_arrDW[m].begin() ; it != m_arrDW[m].end() ; it++ )
{
ret->m_dwArr.insert( *it );
}
简单的说就是我往一个QSet里面插入数据,插入完后,必须同时再添加属性(m_dwArr)。结果他死活报错。原因是ret是ConstIterator,不能修改了。哪位大侠能告诉我怎么修改啊?必须用QSet,这样插入的是唯一的。 --------------------编程问答-------------------- QSet<Line2P>::ConstIterator ret =
改成:
QSet<Line2P>::Iterator ret =
--------------------编程问答-------------------- ConstIterator与Iterator的不同:
QSet<Key, T>::const_iterator allows you to iterate over a QSet. If you want to modify the QSet as you iterate over it, you must use QSet::iterator instead. --------------------编程问答-------------------- QSet<Line2P>::ConstIterator ret =
改成:
QSet<Line2P>::Iterator ret =
多增加了一个错误:
error C2440: “初始化”: 无法从“QSet<T>::const_iterator”转换为“QSet<T>::iterator”
QSet::insert返回的是一个const_iterator。。。。
补充:移动开发 , Qt