This question chiede quale sia il tipo dinamico dell'oggetto assegnato dal malloc
e secondo la risposta all'inizio:A che punto la memoria allocata da malloc ottiene un tipo?
Il valore di ritorno
malloc
è un blocco di memorizzazione non inizializzato. Nessun oggetto è stato costruito all'interno di quella memoria. E quindi non ha tipo dinamico.
Questo porta un'altra domanda: a che punto ha senso dire che la memoria restituita da malloc
ottiene un tipo. Ad esempio:
void *p = malloc(sizeof(int));
int *pi = (int*)p;
possiamo dire che pi
sopra punta a un oggetto di tipo dinamico int
nonostante il fatto che esso è inizializzato?
Non ho il riferimento alla mano, ma come una non risposta in attesa, è quando si scrive un 'int 'ad esso. Il riferimento è da qualche parte nelle cose sulla vita degli oggetti (in particolare dei tipi di POD), se qualcun altro vuole fare il lavoro e reclamare la gloria. –
@SteveJessop Le cose sulla vita degli oggetti non dicono questo (in C++ 14). –
@ M.M: oh, l'hanno cambiato allora? –