Quelle est la différence entre: new int*[]
et new (int*)[]
:Différence entre le nouveau (float *) [] et le nouveau flotteur * []
int** pA = new int*[2] // returns a pointer to an array of pointers to int.
new (int*)[2] // what should this return ? Shouldn't it be same as the above.
De même,
float* pB1 = new float[3]; // compiles successfully.
float* pB2 = new (float)[3] //Gives an error. Shouln't it return an array of floats ?
Mais, le compilateur dit:
A value of type 'float' cannot be used to initialize a value of type float* .
Qu'est-ce qui me manque ici? J'utilise VS2015 Community IDE.
vous demandez un placement nouveau; l'appel est compris comme un pointeur passé à nouveau; voir https://stackoverflow.com/questions/222557/what-uses-are-for-placement-new – OznOg
http://fr.cppreference.com/w/cpp/language/new – Barry
@OznOg, vous devriez étendre le commentaire à une réponse complète. –