泛型编程

泛型编程

编程范式:

  1. 面向过程编程
  2. 面向对象编程
  3. 泛型编程

泛型编程是区别于面向过程、面向对象的编程范式

目的

编写能够适合多种数据类型的代码,而不是为每种特定的数据类型编写重复的代码

C++中,模板是实现泛型的主要方式

模板分为两种:

  1. 函数模板

    创建通用函数的模板

    示例:

    template <typename T>//T可替换成不同类型,包括自定义类型
    void swap(T&a, T& b){
        T temp = a;
        a = b;
        b = temp;
    }
    
  2. 类模板

    创建通用类的模板

    示例:

    template<class T>//T可替换成不同类型,包括自定义类型
    class DynamicArray{
    private:
        T* elements;
        int size;
    public:
        DynamicArray(int n) : size(n){
            elements = new T[size];
        }
        ~DynamicArray() {
            delete[] elements;
        }
        T& operator[](int index){
            return elements[index];
        }
    };
    

优点

  1. 代码复用性高,相同的代码逻辑,可以应用于多种数据类型
  2. 类型安全,编译时会进行类型检查
posted @ 2025-02-27 17:25  十四2001  阅读(18)  评论(0)    收藏  举报