ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
3 июля
84738 Топик полностью
smb (28.03.2007 16:58, просмотров: 1) ответил abivan на вот для чего...
Ну если еще точнее "пародировать" плюсы то можно написать так: <c> typedef struct { void (*pStart)(void); void (*pSeek)(DWORD dwPos); BYTE (*pReadByte)(void); void (*pWriteByte)(BYTE bData); void (*pStop)(void); void (*pDestructor)(ptr this); }DrvVTable; typedef struct{ BYTE bTag; // DWORD dwSize; // Размер устройства BYTE bPageSize;// Размер страницы DWORD dwOffset; // Смещение, актуально при использовании // кодовой памяти(FLASH) для хранилища ptr *pMemPageBuff; // буфер в RAM для записи во FLASH DrvVTable *pFuncs; }t_Drv; </c> Зачем делать конструктор "виртуальным"? ф-ия open() должна инициализировать объект. Поскольку она знает тип объекта, она вызовет соответствующий конструктор.