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.

Простые типы данных

From Wiki
Jump to: navigation, search
Article Metadata

Статья
Перевод:
Оригинал: Basic Data Types
Den123
Последнее редактирование: hamishwillee (16 Dec 2011)

Перевод с английского, оригинальная статья находится здесь.


  • TIntX и TUintX (где X = 8, 16 и 32) используются для представления 8-, 16- и 32-битных знаковых и беззнаковых целых чисел. Если Вы точно не уверенны в размерности (это важно, например при оптимизации или для достижения совместимости), вы должны использовать TInt и TUint (без указания размерности) которые соответствуют знаковым и беззнаковым 32-битным целым.
  • TInt64. В версиях Symbian до 8.0 не было ARM-типа для поддержки 64-битной арифметики, поэтому класс TInt64 хранил 64-разрядное целое как два 32-разрядных значения. В версии Symbian начиная с 8.0 TInt64 и TUint64 объявлены с помощью оператора typedef (typedefed long long) и используют появившуюся поддержку 64-разрядных вычислений.
  • TReal32 и TReal64 ( и TReal который соответствует TReal64 ) используются для вычислений с плавающей точкой одинарной и двойной точности. Соответствуют типам float и double. Операции над такими числами обычно медленнее, чем над целыми, поэтому вы должны использовать их только тогда, когда точно уверены что это необходимо.
  • TTextX (X = 8 или 16) используются для представления 8- и 16-битных символов - соответствуют беззнаковым 8- и 16-разрядным целым.
  • TAny* - нетипизированный указатель, должен использоваться вместо void*. Однако, если void означает "ничего" - то использовать TAny не нужно. Соответственно, функция, которая в качестве параметра принимает указатель void* и ничего не возвращает должна объявляться как "void TypicalFunction(TAny* aPointerParameter)". Это единственное исключение из правила, которое предполагает замену всех стандартных типов на типы Symbian OS. Сделано это потому, что void одинаково правильно "понимается" всеми компиляторами.
  • TBool - логический тип данных. По историческим причинам эквивалентен обычному int. Принимает значения EFalse (=0) и ETrue (=1). Имейте в виду, C++ интерпретирует любое ненулевое значение как true. Следовательно, непосредственное сравнение с true является излишним. Переменная типа TBool занимает 32 бита - множественное использование может привести к неэффективному расходованию памяти, например в классах, которые содержат большое число логических флагов, под каждый из которых используется своя переменная типа TBool.
This page was last modified on 16 December 2011, at 04:30.
205 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.

×