Un type de données variant est une union balisée qui contient d'autres types de données. Il s'agit d'un type de données standard dans [ocaml], et généralement utilisé pour les appels d'interopérabilité entre les langages ([c ++] et [vb6]) dans la programmation classique de Microsoft Windows [com]. Il existe également dans d'autres langages utilisant d'autres noms, tels que [discriminated-unions] ou le concept plus général de [algebraic-data-types]
class Test
{
public:
SOMETHING DoIt(int a)
{
float FLOAT = 1.2;
int INT = 2;
char CHAR = 'a';
switch(a)
{
case 1: return INT;
case 2: return FLOAT;
case 3: return CHAR;
}
} ...