) activeFlag = false #endif //
Автор admin Пятница, 8 мая 2009 11:32
) activeFlag = false #endif // MEMCHECK_H ///:- Этот файл должен включаться во все исходные файлы, для которых требуется отслеживать операции с кучей, но включаться он должен обязательно последним (после всех остальных директив #indude). Большинство заголовочных файлов стандартной библиотеки содержит шаблоны, а поскольку многие компиляторы используют при компиляции шаблонов модель с включением, макрос, заменяющий new в MemCheck.h, узурпирует все вхождения оператора new в исходном коде библиотеки (что, скорее всего, приведет к ошибкам компиляции). Кроме того, нас интересуют наши собственные ошибки в нашем коде, а не в библиотеках. В следующем файле, содержащем реализацию системы отслеживания операций с памятью, весь ввод-вывод осуществляется стандартными средствами С (вместо потоков С++). В принципе, это должно быть несущественно, поскольку мы не мешаем потокам ввода-вывода работать с кучей, но некоторые компиляторы были против. С другой стороны, версия
Комментарии закрыты.
Последние комментарии