Namespaces

Variants
Actions

Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries over the next few weeks. Thanks for all your past and future contributions.

Системные макросы Symbian OS

From Wiki
Jump to: navigation, search
Article Metadata

Статья
Перевод:
Оригинал: Macros in Symbian
Den123
Последнее редактирование: hamishwillee (09 Dec 2011)

Ниже приведены макросы, которые можно использовать для выявления утечек памяти, а также макросы, которые позволяют симулировать нехватку памяти.


__UHEAP_MARK

Старт проверки динамической памяти текущей нити. Макрос определен только для отладочных версий.


__UHEAP_MARKEND

Окончание проверки динамической памяти текущей нити. Выполняет проверку, что с момента вызова __UHEAP_MARK (на текущем уровне вложенности) вся выделенные ячейки памяти были освобождены. Этому макросу должен соответствовать предварительно вызванный __UHEAP_MARK. Макрос определен только для отладочных версий.


__UHEAP_MARKENDC

Окончание проверки динамической памяти текущей нити. Выполняет проверку, что с момента вызова __UHEAP_MARK (на текущем уровне вложенности) остались неосвобожденными aCount ячеек памяти. Этому макросу должен соответствовать предварительно вызванный __UHEAP_MARK. Макрос определен только для отладочных версий.


__UHEAP_FAILNEXT

Симулирует отказ при попытке выделения динамической памяти в рамках текущей нити. Ошибка возникнет при следующем использовании оператора new или любой функции, которая пытается выделить память в куче. Макрос определен только для отладочных версий.


__UHEAP_SETFAIL

Симулирует отказ при попытке выделения динамической памяти в рамках текущей нити. Ошибка возникнет при всех последующих использованиях оператора new или функций, которые пытается выделить память в куче. Макрос определен только для отладочных версий.


__UHEAP_RESET

Отмена симуляции отказа при выделении динамической памяти в рамках текущей нити. Макрос определен только для отладочных версий.


__ASSERT_ALWAYS

Проверка утверждения - действует и в отладочной и в релизной версии. Позволяет выявить ошибки взаимодействия и проектирования классов на ранних стадиях разработки программы.


__ASSERT_DEBUG

Проверка утверждения - действует только в отладочной версии.


__DECLARE_TEST / __TEST_INVARIANT

Проверяют состояние объекта.


GLDEF_C

На практике используется для обозначения глобальных функций.


_DEBUG

С помощью этого макроса код, предназначенный только для тестирования или отладки можно исключить из релизной версии.


_UNICODE

Используется при компиляции кода с использованием Unicode.


IMPORT_C

Макрос используется в приложении для объявления функций, импортируемых из DLL. Макрос информирует компилятор о том, что такие функции необходимо искать в динамических библиотеках.


EXPORT_C

Используется при создании динамических библиотек для объявления экспортируемых функций.


TRAP() и его варианты

Используется в механизме обработки ошибок. Для более подробной информации см. Использование ловушки(TRAP).

This page was last modified on 9 December 2011, at 02:10.
209 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×