Ecco il codice di esempio che mi sono imbattuto su Visual Studio 2010:C++: inizializzazione di puntatore a puntatore a int
#include <iostream>
int main()
{
int **p(NULL);
}
ottengo questo errore: error C2059: syntax error : 'constant'
Ma se cambio int **p(NULL);
-int **p = NULL;
il il codice sopra compila bene.
Controllato su GCC (Versione: 4.4.2) ed entrambi funzionano correttamente. Cosa mi manca qui?
probabilmente, il compilatore non supporta. –
Sembra un bug nel compilatore. Interessante! Si noti che 'int * p (0);' funziona, mentre 'int ** p (0);' no. – avakar
Si noti che se si definisce 'typedef int * PINT;' e quindi si scrive 'PINT * p (NULL);' funziona anche bene. 'int ** p (NULL);' dovrebbe funzionare sicuramente pure. Il fatto che non sia interessante – LihO