Когда вы перегружаете оператор new / delete, они неявно являются c и не требуют разрешения области видимости для создания объекта. Вы можете посетить веб-страницу , , чтобы узнать почему.
Операторы new
и delete
также могут быть перегружены, как и другие операторы в C ++. Операторы new
и delete
могут быть перегружены глобально или они могут быть перегружены для определенных классов c. Если эти операторы перегружены с использованием функции-члена для класса, это означает, что эти операторы перегружены только для указанного c класса. Если перегрузка выполняется вне класса (т. Е. Это не функция-член класса), перегруженные new
и delete
будут вызываться каждый раз, когда вы используете эти операторы (внутри классов или вне классов). Это глобальная перегрузка.
Итак, вам не нужно объявлять и определять эти новые / удаляемые функции во всех CPP файлах, в которые был включен предыдущий заголовок.