IDiaSymbol::get_numericProperties
Pobiera zestaw właściwości liczbowych dla tego symbolu.
Składnia
HRESULT get_numericProperties(
DWORD cnt,
DWORD *pcnt,
DWORD *pProperties
);
Parametry
cnt
[in] Liczba DWORD wskazywanych przez bufor pProperties
.
pcnt
[out] Zwraca liczbę prawidłowych właściwości ustawionych w elem.pProperties
pProperties
[out] Zwraca zestaw właściwości dla tego symbolu.
Wartość zwracana
Jeśli operacja powiedzie się, zwraca wartość S_OK
; w przeciwnym razie zwraca S_FALSE
lub kod błędu.
Uwaga
Wartość zwracana S_FALSE
oznacza, że właściwość nie jest dostępna dla symbolu.
Przykład
CComPtr<pSymbol> pSymbol;
BOOL f = FALSE;
HRESULT hr = E_FAIL;
...
hr = pSymbol->get_isHLSLData(&f);
if (FAILED(hr)) {
return hr;
}
if (f) {
DWORD value = 0;
hr = pSymbol->get_numberOfRegisterIndices(&value);
if (hr == S_OK && value > 0) {
DWORD *pOff = new (std::nothrow) DWORD[value];
if (pOff == NULL) {
return E_OUTOFMEMORY;
}
DWORD propertiesRead;
if (IfOkOrReportAuto(pSymbol->get_numericProperties(value, &propertiesRead, pOff))) {
value = __min(value, propertiesRead);
for (DWORD i = 0; i < value; i++) {
printf("%u\n", pOff[i]);
}
}
delete[] pOff;
}
}