J'ai vu deux récent réponses en utilisant Y a-t-il un tel animal comme Une recherche de code Google sur _1 code> en tant que solution pure C ++ 0X (aucune mention explicite de Boost Lambdas). P>
std :: _ 1 code> Je penserais que les lambdas natifs rendront une telle construction redondante. P>
std :: _ 1 code> apporte Deux résultats du même projet, c'est-à-dire peu concluant. P>
3 Réponses :
Apparemment, ils font partie de C ++ 0X et doivent être définis dans l'en-tête FAQ C ++ 0x P>
Oui, ils font partie de C ++ 0x à l'intérieur du Std :: Installations Code> Espace de noms, à partir du dernier brouillon (N3126) §20.8.10.1.3 "Installations":
namespace std {
namespace placeholders {
// M is the implementation-defined number of placeholders
extern unspecified _1;
extern unspecified _2;
.
.
.
extern unspecified _M;
}
}
Oui, ils font partie de C ++ 0x. Je n'ai pas vérifié les spécifications TR1, mais je soupçonne qu'ils ont été ajoutés là-bas (TR1 était essentiellement une extension de la bibliothèque à C ++ 03, de sorte qu'il ne pouvait pas compter sur Lambdas), puis, puisque c'est déjà là Dans TR1, il serait inutilement perturbateur de le retirer à nouveau dans C ++ 0x, même si ce n'est plus vraiment nécessaire une fois que vous avez de vrai Lambdas. P>
Les espaces réservés sont toujours nécessaires car C ++ 0x Lambdas ne sont pas polymorphes.
Ils sont dans
Pensez-vous qu'ils seraient en namspace std? En boost, ils sont dans l'espace de noms global ...
MSDN a
_1 code> dans un
STD :: Installations Code> Espace de noms et vos deux réponses liées se rapportent également à cela. Ce n'est pas concluant non plus, mais si rien d'autre, vous pouvez rechercher la mauvaise chose.
Oh, je viens de trouver qu'ils sont dans TR1 < / a>