Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Элемент по индексу для Safearray of R8

40K
24 сентября 2009 года
hztp_serg
25 / / 10.07.2009
Так можно получить значение по индексу если в Safearray приходят только BSTR строки:
 
Код:
BSTR HUGEP *pbstrParamNames;
SafeArrayAccessData(ParamNames.parray, (void HUGEP**)&pbstrParamNames);
for (unsigned long j = 0; j < ParamNames.parray->rgsabound->cElements-1; j++)
{
    CComBSTR ParamName = pbstrParamNames[j];
}
SafeArrayUnaccessData(ParamNames.parray);

как сделать тоже самое только для Safearray of R8? Может его сначала перевести в BSTR? Но как?
Большое спасибо!
9.0K
25 сентября 2009 года
grag63
71 / / 23.01.2006
DOUBLE* pfParamVal = (DOUBLE*)ParamNames.parray->pvData;
DOUBLE fk = pfParamVal[k];
40K
25 сентября 2009 года
hztp_serg
25 / / 10.07.2009
Цитата: grag63
DOUBLE* pfParamVal = (DOUBLE*)ParamNames.parray->pvData;
DOUBLE fk = pfParamVal[k];


Большое спасибо! Так работает. Подскажите пожалуйста, как pfParamVal[k] преобразовать в строку CString или BSTR&

40K
25 сентября 2009 года
hztp_serg
25 / / 10.07.2009
Пробую перевести double в CString:
 
Код:
CString Massa;
Massa.Format("%g", pMassProp[6]);

получаю ошибку:
error C2664: void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...):
невозможно преобразовать параметр 1 из 'const char [3]' в 'const wchar_t *'
Как ещё можно попробовать?
11
25 сентября 2009 года
oxotnik333
2.9K / / 03.08.2007
Massa.Format(L"%g", pMassProp[6]);
Massa.Format(_T("%g"), pMassProp[6]);
Massa.Format(_TCHAR("%g"), pMassProp[6]);
40K
25 сентября 2009 года
hztp_serg
25 / / 10.07.2009
Большое спасибо! А количество знаков после запятой задавать можно?
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог