Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk lulus parameter generik dalam fungsi generik C++?

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

WBOY
WBOYasal
2024-06-06 12:06:561037semak imbas

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;
      }

    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

    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;
    }
    🎜🎜Output: 🎜🎜
    5
    3.14
    Hello

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!

Kenyataan:
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