Udostępnij za pośrednictwem


IDiaSession::findChildrenEx

Pobiera wszystkie elementy podrzędne określonego identyfikatora nadrzędnego, które są zgodne z nazwą i typem symboli, w tym zoptymalizowanymi ustawieniami lokalnymi.

Składnia

HRESULT findChildrenEx (
   IDiaSymbol*       parent,
   SymTagEnum        symtag,
   LPCOLESTR         name,
   DWORD             compareFlags,
   IDiaEnumSymbols** ppResult
);

Parametry

parent

[in] IDiaSymbol Obiekt reprezentujący obiekt nadrzędny. Jeśli ten symbol nadrzędny jest funkcją, modułem lub blokiem, jego elementy podrzędne leksykalne są zwracane w elemecie ppResult. Jeśli symbol nadrzędny jest typem, zwracane są jego elementy podrzędne klasy. Jeśli ten parametr ma NULLwartość , symtag należy ustawić SymTagExe wartość lub SymTagNull, która zwraca zakres globalny (.exe pliku).

symtag

[in] Określa tag symbolu elementów podrzędnych do pobrania. Wartości są pobierane z SymTagEnum wyliczenia Enumeration . Ustaw wartość na , aby SymTagNull pobrać wszystkie elementy podrzędne.

name

[in] Określa nazwę elementów podrzędnych do pobrania. Ustaw wartość na NULL dla wszystkich elementów podrzędnych, które mają zostać pobrane.

compareFlags

[in] Określa opcje porównania zastosowane do dopasowania nazw. Wartości z wyliczenia Wyliczenia mogą być używane samodzielnie lub w połączeniu.NameSearchOptions

ppResult

[out] IDiaEnumSymbols Zwraca obiekt zawierający listę pobranych symboli podrzędnych.

Wartość zwracana

Jeśli operacja powiedzie się, zwraca wartość S_OK; w przeciwnym razie zwraca kod błędu.

Przykład

W poniższym przykładzie pokazano, jak znaleźć zmienne lokalne funkcji pFunc , które pasują do nazwy szVarName.

IDiaEnumSymbols* pEnum;
pSession->findChildrenEx( pFunc, SymTagData, szVarName, nsCaseSensitive, &pEnum );

Zobacz też