Melalui Auto sebagai Argumen dalam C
Terdapat kaedah untuk menggunakan kata kunci "auto" sebagai hujah apabila menghantarnya kepada yang lain fungsi. Maksudnya, anda boleh mentakrifkan fungsi seperti ini:
int function(auto data) { // Does something }
Pengenalan Auto C 20 sebagai Jenis Parameter Fungsi
C 20 membolehkan penggunaan "auto" sebagai jenis parameter fungsi. Pertimbangkan coretan kod berikut sebagai contoh:
int function(auto data) { // Do something, there are no constraints on data }
Templat Fungsi Disingkat
Selain itu, "auto" boleh digunakan sebagai templat fungsi yang disingkatkan. Ini ialah contoh khusus bagi kekangan jenis yang tidak mengekang, atau, dengan kata lain, "parameter auto tanpa kekangan." Sebaliknya, "parameter auto terkekang," akan menggunakan konsep dan muncul seperti berikut:
void function(const Sortable auto& data) { // Do something that requires data to be Sortable // Assuming there is a concept named Sortable }
Penjelasan daripada Spesifikasi C
Spesifikasi C mentakrifkan "penentu jenis pemegang tempat" seperti berikut:
type-constraint<sub>opt</sub> auto type-constraint<sub>opt</sub> decltype ( auto )
Penentukan jenis pemegang tempat tersebut menetapkan jenis pemegang tempat yang tertakluk kepada penggantian kemudian melalui potongan daripada pemula. Apabila digunakan dalam "decl-specifier-seq" bagi pengisytiharan fungsi atau ungkapan lambda, penentu jenis pemegang tempat dalam bentuk "type-constraintopt auto" menunjukkan bahawa fungsi tersebut ialah templat fungsi yang disingkatkan. (seperti pada 9.3.3.5).
Atas ialah kandungan terperinci Bolehkah C Functions Menggunakan \'auto\' sebagai Jenis Argumen?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!