Bonsoir, je cherche à définir en type une structure paramétrée

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
struct A{
 
    int m;
 
    A(int m ):m(m){}
 
};
 
struct B{
 
        string name;
        int tab_size;  
        A tab[tab_size];
 
        B(string name, int tab_size, A tab[tab_size]):
                              name(name), tab_size( tab_size),tab[tab_size](tab[tab_size]){}
 
};
d'abord j'aimerais pouvoir construire B avec le nom, la taille du tableau et le tableau remplis de A le tout en un seule ligne

dans le style :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
B("test", 2, {A(5), A(6)} ) test;
puis définir cette construction en type :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
typedef B("test", 2, {A(5), A(6)} ) type;
 
type C;
par ailleurs est-il possible d'ajouter une "fonction" de vérification à B lorsque j'ajoute des A (par exemple uniquement A.m > 10);

définir une classe serait plus simple mais je ne sais pas comment je peux définir une instance de classe en type

en espérant avoir été compréhensible

merci