bonjour à tous,

j'utilise très très souvent l'opérateur new dans mes codes pour faire de l'allocation dynamique, mais je ne comprends pas du tout son implémentation :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
MyClass * p1 = new MyClass[5];
Par exemple, si je crée une classe MyNew :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
class MyNew
{
//blablabla
 
    void* operator[](int size)
    {
        //j'alloue une taille de size octet(s) dans le tas
        return ptr;
    }
};
Si alors je veux allouer un pointeur avec ma classe MyNew je dois :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
MyNew myNew;
int main()
{
     int* ptr = myNew[10 * sizeof(int) ];
}
en aucun cas j'ai la syntaxe : MyClass * p1 = new MyClass[5];.
Comment je peux faire ?

Merci d'avance