Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Kata kunci const memodifikasi jenis deklarasi jenis atau jenis parameter fungsi, mencegah nilai bervariasi.
const const-type identifier = const-expression ;
[ typedef [ , type-attribute-list ] ] const const-type declarator-list;
[ typedef [ , type-attribute-list ] ] pointer-type const declarator-list;
[ [ function-attr-list ] ] type-specifier [ ptr-decl ] function-name(
[ [ parameter-attribute-list ] ] ) const;
const-type [declarator], [ [ parameter-attribute-list ] ] pointer-type const [declarator], ...);
Parameter-parameternya
-
const-type
-
Menentukan bilangan bulat MIDL, karakter, string, atau jenis Boolean yang valid. Jenis MIDL yang valid termasuk kecil, pendek, panjang, karakter, karakter *, wchar_t, wchar_t *, byte, byte *, dan void *. Bilangan bulat dan jenis karakter dapat ditandatangani atau tidak ditandatangani.
-
pengidentifikasi
-
Menentukan pengidentifikasi MIDL yang valid. Pengidentifikasi MIDL yang valid terdiri dari hingga 31 karakter alfanumerik dan/atau garis bawah dan harus dimulai dengan karakter alfabet atau garis bawah.
-
const-expression
-
Menentukan ekspresi, pengidentifikasi, atau konstanta numerik atau karakter yang sesuai untuk jenis yang ditentukan: literal bilangan bulat konstanta atau ekspresi bilangan bulat konstanta untuk konstanta bilangan bulat; Ekspresi Boolean yang dapat dihitung pada kompilasi untuk jenis Boolean ; konstanta karakter tunggal untuk jenis karakter ; dan konstanta string untuk jenis [string] . Jenis * yang kosong hanya dapat diinisialisasi ke NULL.
-
type-attribute-list
-
Menentukan satu atau beberapa atribut yang berlaku untuk jenis tersebut.
-
jenis penunjuk
-
Menentukan jenis pointer MIDL yang valid.
-
deklarator dan daftar deklarator
-
Menentukan deklarator C standar, seperti pengidentifikasi, deklarator pointer, dan deklarator array. Untuk informasi selengkapnya, lihat Array dan Sized-Pointer Atribut, array, dan Array dan Pointer. Daftar deklarator terdiri dari satu atau beberapa deklarator, dipisahkan oleh koma. Pengidentifikasi nama parameter dalam deklarator fungsi bersifat opsional.
-
function-attr-list
-
Menentukan nol atau lebih atribut yang berlaku untuk fungsi. Atribut fungsi yang valid adalah [callback], [local]; atribut pointer [ref], [unique], atau [ptr]; dan atribut penggunaan [string], [ignore], dan [context_handle].
-
type-specifier
-
Menentukan pengidentifikasi base_type, struct, union, enum type, atau type. Spesifikasi penyimpanan opsional dapat mendahului type-specifier.
-
ptr-decl
-
Menentukan nol atau lebih deklarator penunjuk. Deklarator pointer sama dengan deklarator penunjuk yang digunakan dalam C. Ini dibangun dari * perancang, pengubah seperti jauh, dan konstanta kualifikasi.
-
nama fungsi
-
Menentukan nama prosedur jarak jauh.
-
parameter-attribute-list
-
Menentukan atribut arah nol atau lebih, atribut bidang, atribut penggunaan, dan atribut penunjuk yang sesuai untuk jenis parameter yang ditentukan. Pisahkan beberapa atribut dengan koma.
Komentar
MIDL memungkinkan Anda untuk mendeklarasikan bilangan bulat, karakter, string, dan jenis Boolean konstan dalam isi antarmuka file IDL. Deklarasi jenis const diproduksi ulang dalam file header yang dihasilkan sebagai arahan #define.
Pengkompilasi IDL DCE tidak mendukung ekspresi konstanta. Oleh karena itu, fitur ini tidak tersedia saat Anda menggunakan sakelar /osf compiler MIDL.
Konstanta yang ditentukan sebelumnya dapat digunakan sebagai nilai yang ditetapkan dari konstanta berikutnya. Nilai ekspresi integral konstanta secara otomatis dikonversi ke jenis bilangan bulat masing-masing sesuai dengan aturan konversi C.
Nilai konstanta karakter harus berupa karakter ASCII yang dikutip tunggal. Ketika konstanta karakter adalah karakter tanda kutip tunggal itu sendiri ('), karakter garis miring terbalik (\) harus mendahului karakter tanda kutip tunggal, seperti dalam \'.
Nilai konstanta string karakter harus berupa string yang dikutip ganda. Dalam string, karakter garis miring terbalik (\) harus mendahului karakter kutipan ganda harfiah ( " ), seperti dalam \". Dalam string, karakter garis miring terbelakang (\) mewakili karakter escape. Konstanta string dapat terdiri dari hingga 255 karakter.
Nilai NULL adalah satu-satunya nilai yang valid untuk konstanta dari jenis void *. Atribut apa pun yang terkait dengan deklarasi kontras diabaikan.
Pengkompilasi MIDL tidak memeriksa kesalahan rentang dalam inisialisasi const . Misalnya, ketika Anda menentukan "const short x = 0xFFFFFFFF;" pengkompilasi MIDL tidak melaporkan kesalahan dan inisialisasi direproduksi dalam file header yang dihasilkan.
Examples
const void * p1 = NULL;
const char my_char1 = 'a';
const char my_char2 = my_char1;
const wchar_t my_wchar3 = L'a';
const wchar_t * pszNote = L"Note";
const unsigned short int x = 123;
typedef [string] const char *LPCSTR;
HRESULT GetName([out] wchar_t * const pszName );
Baca juga