Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Visual c++ et STL roguewave =>pair.h(63) : error C2079: 'first' uses undefined class

1 réponse
Avatar
akira
J'ai un probl=E8me de compilation avec Visual c++ et les STL roguewave.
Le code en bas me donne l'erreur suivante :
f:\xxxxx\product\rw\rcb1.2.0\rm\include\rw\_pair.h(63) : error C2079:
'first' uses undefined class 'Tempo'.

En compilant avec les STL microsoft, =E7a compile. Mais, je dois
utiliser les STL roguewave.

class Tempo
{
...
std::vector<std::pair<Tempo,bool>> _data; =3D=3D=3D=3D> c'est la
d=E9claration de Tempo qui pose 1 pb!!!

.
.

1 réponse

Avatar
kanze
akira wrote:
J'ai un problème de compilation avec Visual c++ et les STL roguewave.
Le code en bas me donne l'erreur suivante :
f:xxxxxproductrwrcb1.2.0rmincluderw_pair.h(63) : error C2079:
'first' uses undefined class 'Tempo'.

En compilant avec les STL microsoft, ça compile. Mais, je dois
utiliser les STL roguewave.

class Tempo
{
...
std::vector<std::pair<Tempo,bool>> _data; ====> c'est la
déclaration de Tempo qui pose 1 pb!!!


C'est interdit par la norme : comportement indéfini, voir
§17.4.3.6/2 « In particular, the effects are undefined in the
following cases: [...] -- if an incomplete type is used as a
template argument when instantiating a template component. »

(En passant, je ne comprends pas l'exigence d'utiliser Roguewave
avec VC++. La bibliothèque qui est livrée avec VC++ est une des
meilleurs en termes de qualité -- celle de Roguewave est
probablement la pire. Si le but est d'avoir la même
implémentation sur toutes les plateformes, le STLport est mieux
que Roguewave, et gratuit, et Dinkumware ne coûte probablement
pas plus de Roguewave, et c'est probablement la meilleur.)

--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34