Перевод с Си

Любые обсуждения, не нарушающие правил форума.

Модератор: Модераторы

Ответить
Аватара пользователя
Иван Шихалев
энтузиаст
Сообщения: 1138
Зарегистрирован: 15.05.2006 11:26:13
Откуда: Екатеринбург
Контактная информация:

Сообщение Иван Шихалев »

Во-первых, сколько весит сишный енум?
И во-вторых, как перевести вот такое чудо:

Код: Выделить всё

typedef enum
{
  UnrecognizedDispose,
  UndefinedDispose = 0,
  NoneDispose = 1,
  BackgroundDispose = 2,
  PreviousDispose = 3
} DisposeType;
Sniper
постоялец
Сообщения: 472
Зарегистрирован: 28.05.2005 13:02:42

Сообщение Sniper »

вот так: =)
const
UnrecognizedDispose = 0;
UndefinedDispose = 0;
NoneDispose = 1;
BackgroundDispose = 2;
PreviousDispose = 3;
Sphinx
новенький
Сообщения: 33
Зарегистрирован: 27.09.2005 21:52:09

Сообщение Sphinx »

как вариант, на мой взгляд более близкий чем константы:

Код: Выделить всё

type
  TDisposeType = (UnrecognizedDispose,
                  UndefinedDispose  = 0,
                  NoneDispose = 1,
                  BackgroundDispose = 2,
                  PreviousDispose = 3);
Аватара пользователя
Иван Шихалев
энтузиаст
Сообщения: 1138
Зарегистрирован: 15.05.2006 11:26:13
Откуда: Екатеринбург
Контактная информация:

Сообщение Иван Шихалев »

UnrecognizedDispose = 0;

Т.е. енумы с нуля начинаются таки...

А что с размером?
SovNarKom
постоялец
Сообщения: 389
Зарегистрирован: 28.05.2005 10:37:39
Откуда: Воронеж [vrn] [36]
Контактная информация:

Сообщение SovNarKom »

Да, UndefinedDispose=UnrecognizedDispose=0

Что касается размера:
Насколько мне известно в gcc - минимально необходимое, в MSVC - 4
Вот <a href='http://mayor.vorkuta.ru/FidoNews/read-art.php?server=192.168.160.68&group=ru.unix.prog&artnum=13519' target='_blank'>тут</a> что-то было про это.
Ответить