Разница между операторами new и malloc заключается в их поведении при выделении памяти для переменных и объектов. 2
malloc — это функция, которая выделяет память для переменных или объектов в куче. 2 Она принимает размер (пространство памяти, требуемое переменной) в байтах в качестве аргумента и возвращает указатель на выделенную область памяти. 2
Оператор new также выделяет память для переменных или объектов в куче. 2 Он автоматически рассчитывает размер блока памяти для заданного типа данных. 2 При использовании new для выделения памяти для объекта класса C++ после выделения памяти вызывается конструктор объекта. 2
Таким образом, основное различие в том, что malloc просто выделяет память, а new выделяет память с проверкой и вызовом конструктора для объекта. 1