Bagaimana untuk lulus parameter generik dalam fungsi generik C++?

WBOY
Lepaskan: 2024-06-06 12:06:56
asal
1092 orang telah melayarinya

Melalukan parameter generik kepada fungsi generik dalam C++: Isytihar fungsi generik: Gunakan kata kunci templat dan jenis pemegang tempat T. Memanggil fungsi dengan hujah generik: Gantikan ruang letak jenis dengan hujah jenis konkrit.

Bagaimana untuk lulus parameter generik dalam fungsi generik C++?

Melepasi Parameter Generik dalam Fungsi Generik C++

Fungsi generik membolehkan anda menulis kod yang beroperasi pada jenis data yang berbeza tanpa perlu menulis fungsi berasingan untuk setiap jenis data. Dalam C++, parameter generik diwakili menggunakan pemegang tempat jenis T. T 来表示。

要向泛型函数传递泛型参数,请遵循以下步骤:

  1. 声明泛型函数:使用 template
  2. Untuk menghantar parameter generik kepada fungsi generik, ikuti langkah berikut:
    1. Isytihar fungsi generik: Gunakan kata kunci template dan taip ruang letak untuk mengisytiharkan fungsi generik . Contohnya:
    2. template<typename T>
      T max(T a, T b) {
        return (a > b) ? a : b;
      }
      Salin selepas log masuk

    Panggil fungsi menggunakan argumen generik:

    Panggil fungsi generik dengan menggantikan ruang letak jenis dengan hujah jenis konkrit. Contohnya:

    int x = max<int>(1, 2);  // 调用 max<int>,返回 int
    double y = max<double>(3.14, 2.71);  // 调用 max<double>,返回 double
    Salin selepas log masuk

    Kes praktikal

    Matlamat:

    Tulis fungsi generik untuk mencetak pelbagai jenis nilai.

    Kod:

    🎜
    #include <iostream>
    
    template<typename T>
    void print(T value) {
      std::cout << value << std::endl;
    }
    
    int main() {
      print<int>(5);  // 打印整数
      print<double>(3.14);  // 打印浮点数
      print<std::string>("Hello");  // 打印字符串
      return 0;
    }
    Salin selepas log masuk
    🎜🎜Output: 🎜🎜
    5
    3.14
    Hello
    Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk lulus parameter generik dalam fungsi generik C++?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan