Разьясните мне такое поведение компилятора:
Есть проект, в нём используется выделение памяти через new.
Делаю ещё один файл cpp. Пишу в нём перегрузку оператора new. Заголовочного файла не делаю. Этот файл просто компилится. И после ребуидла уже все вызовы new залинкованы на это переопределение.
Мне непонятно то, что здесь нет явного объявления этой функции в других исходниках. Компилятор сам решил все вызовы перестроить на этот new.
Скажите, это поведение нормально? Оно гдето описано?