Salut,
Si je comprends bien, tu souhaites avoir un tableau de valeur et les caster à la demande d'un type vers un autre. Mais une fois le cast fait, tu voudrais garder le résultat pour ne pas avoir à le faire à la requête suivante. Un peu comme un objet qui aurait plusieurs facettes mais serait optimisé pour ne 'calculer' une facette qu'une seule fois et pas à chaque demande. Je ne connais pas de conteneur qui fasse celà. Boost.Variant ou Boost.Any sont plus des unions au sens où une variable a à un moment
une valeur d'
un type alors que tu veux qu'une variable aie plusieurs valeurs de plusieurs types.
Tu voudrais pouvoir faire ça :
1 2 3 4 5
|
mon_type valeur = 1;
std::string str1 = get<std::string>(valeur); // une conversion est faite
// blalabla...
std::string str2 = get<std::string>(valeur); // la conversion précédente est retournée si valeur n'a pas changé entre temps. |
Partager