Доступ к объекту внутри оператора c ++ - PullRequest
1 голос
/ 06 марта 2020

Я перегружаю «новый» оператор для отслеживания каждого распределения. Я хочу, чтобы он печатал размер выделенной памяти, а также тип выделенного объекта.

Я придумал что-то вроде этого:

void* operator new(size_t size) {
  std::cout << "Allocating " << size << " bytes.\n";
  return malloc(size);
}

, но Я понятия не имею, как напечатать тип объекта. Спасибо за помощь!

1 Ответ

0 голосов
/ 06 марта 2020

Тип не задействован вообще. Вы нигде не указываете какой-либо тип - вы просто распределяете память в байтах. Таким образом, тип всегда является массивом size байтов.

...