Вы используете оператор std::cout
s <<
внутри функции замены new
.Этот оператор может легко вызвать new
для выполнения некоторого распределения, в свою очередь вызывая замену new
, которая будет вызывать <<
и т. Д. И т. П.
Вам следует быть осторожным счто вы делаете в этих функциях.Если вы хотите увидеть, как они называются, вы можете использовать некоторые предварительно выделенные структуры и регистрироваться с ними (или просто увеличивать глобальный счетчик).
Причина, по которой это происходит с одним набором флагов, но не с другим, заключается в том, чтовероятно, из-за различных стратегий распределения, используемых <<
на основе этих флагов.Они будут частными для реализации, и вы не должны полагаться на них.