Bagikan melalui


Struktur FUNCDESC (oaidl.h)

Menjelaskan fungsi.

Sintaks

typedef struct tagFUNCDESC {
  MEMBERID   memid;
  SCODE      *lprgscode;
  ELEMDESC   *lprgelemdescParam;
  FUNCKIND   funckind;
  INVOKEKIND invkind;
  CALLCONV   callconv;
  SHORT      cParams;
  SHORT      cParamsOpt;
  SHORT      oVft;
  SHORT      cScodes;
  ELEMDESC   elemdescFunc;
  WORD       wFuncFlags;
} FUNCDESC, *LPFUNCDESC;

Anggota

memid

ID anggota fungsi.

lprgscode

Kode status.

lprgelemdescParam

Deskripsi elemen .

funckind

Menunjukkan jenis fungsi (virtual, statis, atau pengiriman saja).

invkind

Jenis pemanggilan. Menunjukkan apakah ini adalah fungsi properti, dan jika demikian, jenis mana.

callconv

Konvensi panggilan.

cParams

Jumlah total parameter.

cParamsOpt

Jumlah parameter opsional.

oVft

Untuk FUNC_VIRTUAL, menentukan offset dalam VTBL.

cScodes

Jumlah kemungkinan nilai yang dikembalikan.

elemdescFunc

Jenis pengembalian fungsi.

wFuncFlags

Bendera fungsi. Lihat FUNCFLAGS.

Keterangan

Bidang cParams menentukan jumlah total parameter yang diperlukan dan opsional.

Bidang cParamsOpt menentukan bentuk parameter opsional yang diterima oleh fungsi, sebagai berikut:

  • Nilai 0 menentukan bahwa tidak ada argumen opsional yang didukung.
  • Nilai –1 menentukan bahwa parameter terakhir metode adalah penunjuk ke array varian yang aman. Sejumlah argumen varian yang lebih besar dari cParams –1 harus dipaketkan oleh pemanggil ke dalam array yang aman dan diteruskan sebagai parameter akhir. Array parameter opsional ini harus dikosongkan oleh pemanggil setelah kontrol dikembalikan dari panggilan.
  • Angka lain menunjukkan bahwa parameter n terakhir dari fungsi adalah varian dan tidak perlu ditentukan oleh pemanggil secara eksplisit. Parameter yang dibiarkan tidak ditentukan harus diisi oleh pengkompilasi atau penerjemah sebagai varian jenis VT_ERROR dengan nilai DISP_E_PARAMNOTFOUND.

Persyaratan

Persyaratan Nilai
Header oaidl.h