×
Namespaces

Variants
Actions

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

From Nokia Developer 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.
39 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.

×