Bagikan melalui


IDiaEnumSymbols

Menghitung berbagai simbol yang terkandung dalam sumber data.

Sintaks

IDiaEnumSymbols : IUnknown

Metode dalam Urutan Vtable

Tabel berikut memperlihatkan metode IDiaEnumSymbols.

Metode Deskripsi
IDiaEnumSymbols::get__NewEnum Mengambil versi IEnumVARIANT Interface dari enumerator ini.
IDiaEnumSymbols::get_Count Mengambil jumlah simbol.
IDiaEnumSymbols::Item Ambil simbol melalui indeks.
IDiaEnumSymbols::Next Mengambil sejumlah simbol tertentu dalam urutan enumerasi.
IDiaEnumSymbols::Skip Melompati sejumlah simbol tertentu dalam urutan enumerasi.
IDiaEnumSymbols::Reset Mereset urutan enumerasi ke awal.
IDiaEnumSymbols::Clone Membuat enumerator yang berisi status enumerasi yang sama dengan enumerator saat ini.

Keterangan

Antarmuka ini menyediakan simbol yang dikelompokkan menurut jenis simbol tertentu, misalnya, SymTagUDT (jenis yang ditentukan pengguna (UDT)) atau SymTagBaseClass. Untuk bekerja dengan simbol yang dikelompokkan menurut alamat, gunakan antarmuka IDiaEnumSymbolsByAddr .

Catatan untuk Penelepon

Dapatkan antarmuka ini dengan memanggil metode berikut:

Contoh

Contoh ini menunjukkan cara mendapatkan antarmuka lalu menggunakan enumerasi tersebut IDiaEnumSymbols untuk mencantumkan jenis yang ditentukan pengguna (UDT).

Catatan

CDiaBSTR adalah kelas yang membungkus BSTR dan otomatis menangani pembebasan string ketika instansiasi keluar dari cakupan.

void ShowUDTs(IDiaSymbol *pGlobals)
{
    CComPtr<IDiaEnumSymbols> pEnum;
    CComPtr<IDiaSymbol> pSymbol;
    HRESULT hr;

    hr = pGlobals->findChildren(SymTagUDT,
                                NULL,
                                nsfCaseInsensitive | nsfUndecoratedName,
                                &pEnum);
    if (hr == S_OK)
    {
        while ( SUCCEEDED( hr = pEnum->Next( 1, &pSymbol, &celt ) ) &&
                celt == 1 )
        {
            CDiaBSTR name;
            if ( pSymbol->get_name( &name ) != S_OK )
                Fatal( "get_name" );
            printf( "Found UDT: %ws\n", name );
            pSymbol = 0;
        }
    }
}

Persyaratan

Header: Dia2.h

Library: diaguids.lib

DLL: msdia80.dll

Lihat juga