Est-ce que C++ a quelque chose comme std :: pair mais avec 3 éléments?
Par exemple:
#include <triple.h>
triple<int, int, int> array[10];
array[1].first = 1;
array[1].second = 2;
array[1].third = 3;
Vous cherchez peut-être std::Tuple
:
#include <Tuple>
....
std::Tuple<int, int, int> tpl;
std::get<0>(tpl) = 1;
std::get<1>(tpl) = 2;
std::get<2>(tpl) = 3;
Modèle de classe std::Tuple
est une collection de valeurs hétérogènes de taille fixe, disponible dans la bibliothèque standard depuis C++ 11. Il s'agit d'une généralisation de std::pair
et présenté en en-tête
#include <Tuple>
Vous pouvez en lire plus ici:
http://en.cppreference.com/w/cpp/utility/Tuple
Exemple:
#include <Tuple>
std::Tuple<int, int, int> three;
std::get<0>( three) = 0;
std::get<1>( three) = 1;
std::get<2>( three) = 2;
Non, il n'y en a pas.
Vous pouvez cependant utiliser un Tuple ou une "double paire" (pair<pair<T1,T2>,T3>
). Ou - évidemment - écrivez la classe vous-même (ce qui ne devrait pas être difficile).