J’ai lu tout autour de savoir >>
tant que fin du modèle nested et >>
tant qu’opérateur de changement …
Maintenant, je l’ai essayé dans mon MSVS2010 et aucun problème ne s’est produit.
std::map<int, std::pair> m;
Ce code fonctionne exactement ce que je veux (carte de paires) mais je devais avoir une erreur à propos de >>
Le compilateur est plus intelligent ces jours-ci?
MSVC ++ 2010 prend en charge les supports à angle droit de la fonctionnalité C ++ 0x
Soyez prudent, car un code C ++ 03 de bonne qualité risque de ne plus fonctionner avec les compilateurs prenant en charge cette fonctionnalité.
MyArray< MyArray> 2>, 5 > arrayInst;
Ce serait la solution:
MyArray< MyArray> 2)>, 5 > arrayInst;
Ce code fonctionne exactement ce que je veux (carte de paires) mais je devais avoir une erreur à propos de >>
C ++ 0x a corrigé cela. Donc, si vous ne recevez aucune erreur avec MSVS2010, alors ce n’est pas étonnant, car MSVS2010 a implémenté certaines fonctionnalités de C ++ 0x.
De plus, même avec C ++ 03, de nombreux compilateurs traitent de tels cas, bien que cela ne soit pas requirejs par la norme (2003).
C ++ 0x supporte maintenant cette syntaxe sans erreur. Les compilateurs ont déjà commencé à implémenter la plupart de ces fonctionnalités, il n’est donc pas surprenant que le dernier compilateur Microsoft C ++ les prenne en charge.