Привет, ребята. Я работаю над исправлением старого кода для моей работы. В настоящее время он написан на C ++. Они преобразовали статическое размещение в динамическое, но не редактировали memsets / memcmp / memcpy. Это моя первая стажировка по программированию, так что мне не хватает моего вопроса, похожего на новичка.
Следующий код написан на C, но я хочу, чтобы он был на C ++ (я читал, что malloc не является хорошей практикой в C ++). У меня есть два сценария: во-первых, мы создали. Затем вы используете & F, чтобы заполнить с нуля. Второй указатель * pf. Я не уверен, как установить pf для всех 0, как в предыдущем примере в C ++.
Не могли бы вы просто сделать pf = new foo
вместо malloc и затем вызвать 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) );