Здравствуйте все!
Извиняюсь за, возможно, слишком ламерский вопрос.
Итак, есть у меня RecordSet с данными, теперь мне надо эти данные поместить в массив структур, причем количество структур в массиве, как вы понимаете, заранее неизвестно, т.е. как бы динамический массив.
Насколько я понимаю, данные в RecordSet'е хранятся в типе _variant_t, т.е. результатом строчки
RecPtr->GetFields()->GetItem(L"field_name")->Value
будет тип _variant_t.
Далее, есть у меня структура вида
struct RecStr
{
char np_timep;
unsigned int id;
char prod_abbr2;
char num_otgr;
short int num_sec;
unsigned short int vzl_sert;
unsigned int card_id;
unsigned short int card_num;
unsigned short int status;
char np_data_o;
char fio_driver;
};
, а также массив таких структур
RecStr **MasRec = new RecStr*[RecNum]; //
for (int i = 0; i < RecNum; i ++) //
{ //Кстати, правильно ли я делаю?
MasRec[i] = new RecStr; //
} //
Необходимо данные из RecordSet'a записать в этот массив, но пока не получается.
Делаю так
(TCHAR*)(_bstr_t)RecPtr->GetFields()->GetItem(L"id")->Value;
— компилятор ругается, вот так
*(TCHAR*)(_bstr_t)RecPtr->GetFields()->GetItem(L"id")->Value;
— выводит непонятные значения.
Может кто-нибудь в курсе, как нужно делать правильно? Направьте новичка на путь истинный =)