Método IDebugHostBaseClass2::EnumerateChildren (dbgmodel.h)
El método EnumerateChildren devuelve un enumerador que enumerará todos los elementos secundarios de un símbolo determinado. Para un tipo de C++, por ejemplo, las clases base, los campos, las funciones miembro y el tipo se consideran elementos secundarios del símbolo de tipo.
Sintaxis
HRESULT EnumerateChildren(
SymbolKind kind,
PCWSTR name,
IDebugHostSymbolEnumerator **ppEnum
);
Parámetros
kind
Indica qué tipos de símbolos secundarios desea enumerar el autor de la llamada. Si se pasa el valor plano Symbol, se enumerarán todos los tipos de símbolos secundarios.
name
Si se especifica, solo se enumerarán los símbolos secundarios con un nombre como se indica en este argumento.
ppEnum
Un enumerador que enumera los símbolos secundarios del tipo y el nombre especificados se devolverán aquí.
Valor devuelto
Este método devuelve HRESULT que indica éxito o error.
Observaciones
de ejemplo de código de
ComPtr<IDebugHostType> spType; /* get the type of an object */
// Enumerate every field of this type. Note that this *WILL NOT* enumerate
// fields of base classes!
ComPtr<IDebugHostSymbolEnumerator> spEnum;
if (SUCCEEDED(spType->EnumerateChildren(SymbolField, nullptr, &spEnum)))
{
ComPtr<IDebugHostSymbol> spFieldSymbol;
HRESULT hr = S_OK;
while (SUCCEEDED(hr))
{
hr = spEnum->GetNext(&spFieldSymbol);
if (SUCCEEDED(hr))
{
ComPtr<IDebugHostField> spField;
if (SUCCEEDED(spFieldSymbol.As(&spField))) /* should always succeed */
{
// spField is each field of the type in turn
}
}
}
// hr == E_BOUNDS : we hit the end of the enumerator
// hr == E_ABORT : user requested interruption, propagate upwards immediately
}
Requisitos
Requisito | Valor |
---|---|
encabezado de |
dbgmodel.h |
Consulte también