[sisyphus] GCC 3.3 vs GCC 3.4

Epiphanov Sergei =?iso-8859-1?q?serpiph_=CE=C1_nikiet=2Eru?=
Пн Апр 11 16:24:48 MSD 2005


В сообщении от 11 Апрель 2005 16:12 Andrey Rahmatullin написал:
> On Mon, Apr 11, 2005 at 03:46:53PM +0400, Epiphanov Sergei wrote:
> > То есть надо править Qt или ждать когда разработчики исправят это
> > сами? Я
>
> У вас не работает прога, включающая qmap.h? Покажите ее.
>
> > имею в виду файл qmap.h, определение оператора [] для класса QMap.
>
>     T& operator[] ( const Key& k );
> Это что ли? А что здесь неправильно?

template<class Key, class T>
Q_INLINE_TEMPLATES T& QMap<Key,T>::operator[] ( const Key& k )
{
    detach();
    QMapNode<Key,T>* p = sh->find( k ).node;
    if ( p != sh->end().node )
        return p->data;
    return insert( k, T() ).data();
}

Проблема в строке

return  insert( k, T() ).data();

А программа проста:


QMap<int,QString> map;
QString s("Str");
map[0]=s;


-- 
С уважением, Епифанов Сергей



Подробная информация о списке рассылки Sisyphus