Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2007.10.14;
Скачать: [xml.tar.bz2];

Вниз

Emuneration для индексов массива в Delphi: перевод на С++   Найти похожие ветки 

 
monkeyboy   (2007-08-01 13:31) [0]

В Delphi для задания массива используется тип, и можно использовать enum.
type
 TFileTimeKind = (ftkLastModidied, ftkAccessed, ftkCreated);
...
 FFileTimes: array[TFiletipeKind] of TFileTime;


Пытаюсь это  выразить в С++ :

typedef enum
{
 LastModidied,
 Accessed,
 Created
}
FileTimeKind;
...
 FILETIME fileTimes_[3];


Можно ли как-то сделать, чтобы константа 3 вычислялась из диапазона enum ?


 
Dib@zol ©   (2007-08-01 13:33) [1]

Эт тебе не сюда, а на http://forum.vingrad.ru надо (ИМХО).


 
clickmaker ©   (2007-08-01 13:41) [2]

typedef enum
{
LastModidied = 1,
Accessed,
Created
}
так что-ли?


 
Игорь Шевченко ©   (2007-08-01 13:54) [3]

Видел только такое решение:

typedef enum _SYSTEM_POWER_STATE {
   PowerSystemUnspecified = 0,
   PowerSystemWorking     = 1,
   PowerSystemSleeping1   = 2,
   PowerSystemSleeping2   = 3,
   PowerSystemSleeping3   = 4,
   PowerSystemHibernate   = 5,
   PowerSystemShutdown    = 6,
   PowerSystemMaximum     = 7
} SYSTEM_POWER_STATE, *PSYSTEM_POWER_STATE;

#define POWER_SYSTEM_MAXIMUM 7

typedef struct CM_Power_Data_s {
   DWORD               PD_Size;
   DEVICE_POWER_STATE  PD_MostRecentPowerState;
   DWORD               PD_Capabilities;
   DWORD               PD_D1Latency;
   DWORD               PD_D2Latency;
   DWORD               PD_D3Latency;
   DEVICE_POWER_STATE  PD_PowerStateMapping[POWER_SYSTEM_MAXIMUM];
--------------------------------------------------^^^^^^^^^^^^^^^^^
   SYSTEM_POWER_STATE  PD_DeepestSystemWake;
} CM_POWER_DATA, *PCM_POWER_DATA;


 
palva ©   (2007-08-01 13:59) [4]

Может быть, так?

#include <stdio.h>

typedef enum
{
LastModidied,
Accessed,
Created,
Max_Enum
}

FileTimeKind;

int fileTimes_[Max_Enum];
void main() {
 fileTimes_[Created] = 777;
 printf("%d\n", fileTimes_[Created]);
}


 
monkeyboy   (2007-08-01 14:08) [5]


> Игорь Шевченко ©  

Понятно, спасибо.
То есть, того что хотелось бы, нет.
В моей ситуации тогда лучше сделать три поля.


 
monkeyboy   (2007-08-01 14:12) [6]


> palva ©

Да, наверное именно так надо, спасибо.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2007.10.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.043 c
1-1185883153
Егоров А.Н.
2007-07-31 15:59
2007.10.14
ToolBar


2-1189678304
molodoi
2007-09-13 14:11
2007.10.14
Вычисляемое поле в DBLookUpComboBox


2-1190010340
alshtam
2007-09-17 10:25
2007.10.14
Tstring list


15-1189600171
zdm77
2007-09-12 16:29
2007.10.14
Фискальный регистратор


15-1190042730
Nikfel
2007-09-17 19:25
2007.10.14
Как пользоваться китайскими палочками.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский