Pour le C++03 std::pair
, les fonctions d'accès à la membres ne servirait à rien.
Que de C++11 et plus tard (nous sommes maintenant à la C++14, avec C++17 à venir rapidement) std::pair
est un cas spécial de l' std::tuple
où std::tuple
peut avoir un nombre quelconque d'éléments. En tant que tel, il est logique d'avoir un paramétrée de lecture, il serait difficile d'inventer et de normaliser un nombre arbitraire de leurs noms. Ainsi, vous pouvez utiliser std::get
également pour un std::pair
.
Ainsi, les raisons pour la conception sont historiques, que le courant en std::pair
) est le résultat d'une évolution vers une plus grande généralité.
Dans d'autres nouvelles:
concernant
” Autant que je sache, il sera mieux si l'encapsulation des deux variables de membre ci-dessus et de donner un getFirst();
et getSecond()
non, c'est de la foutaise.
C'est comme de dire que le marteau est toujours mieux, si vous êtes à la conduite dans les clous, fixation avec des vis, ou de découper un morceau de bois. Surtout dans le dernier cas, un marteau est pas juste un outil utile. Les marteaux peuvent être très utiles, mais cela ne signifie pas qu'ils sont “mieux” en général: c'est tout simplement absurde.