Hey ragazzi. Sto lavorando per sistemare il vecchio codice per il mio lavoro. Attualmente è scritto in C++. Hanno convertito l'allocazione statica in dinamica, ma non hanno modificato i memsets/memcmp/memcpy. Questo è il mio primo stage di programmazione così semplice con la mia domanda newbe.Utilizzo di memset su strutture in C++
Il seguente codice è in C, ma voglio averlo in C++ (ho letto che malloc non è una buona pratica in C++). Ho due scenari: in primo luogo, abbiamo creato f. Quindi si utilizza & f per riempire con zero. Il secondo è un puntatore * pf. Non sono sicuro di come impostare pf su tutti gli 0 come nell'esempio precedente in C++.
Puoi semplicemente fare pf = new foo
invece di malloc e quindi chiamare memset(pf, 0, sizeof(foo))
?
struct foo { ... } f;
memset(&f, 0, sizeof(f));
//or
struct foo { ... } *pf;
pf = (struct foo*) malloc(sizeof(*pf));
memset(pf, 0, sizeof(*pf));
Dipende da cosa c'è in foo! –