21xrx.com
2024-09-17 03:35:16 Tuesday
登录
文章检索 我的文章 写文章
C++模板的使用
2023-07-13 06:49:59 深夜i     --     --
C++ 模板 int 使用 泛型编程

C++是一种强大的编程语言,支持使用模板进行编程。模板是一种将数据类型抽象出来的机制,可以根据不同的数据类型生成代码。C++模板最常见的使用场景就是定义容器类和函数模板。

在C++中,我们可以使用 来指定模板类型为整型。如下所示:


template<typename T>

void print(T val)

  cout << val << endl;

int main(){

  print<int>(10);

  return 0;

}

上述代码定义了一个函数模板print,用来输出参数val的值。在main中通过print (10)调用该函数,并指定了模板类型为整型。运行程序后,会输出10。

除了函数模板外,C++模板还可以用来定义类模板。我们可以通过类模板来定义容器类,如vector、list等等。

例如,我们可以定义一个容器类MyVector,用来存储模板类型T的数据。如下所示:


template<typename T>

class MyVector{

private:

  vector<T> data;

public:

  void push_back(T val){

    data.push_back(val);

  }

  void pop_back(){

    data.pop_back();

  }

  T& operator[](int i){

    return data[i];

  }

  int size(){

    return data.size();

  }

};

int main(){

  MyVector<int> v;

  v.push_back(1);

  v.push_back(2);

  v.push_back(3);

  cout << "size=" << v.size() << endl;

  for(int i=0;i<v.size();i++){

    cout << v[i] << endl;

  }

  v.pop_back();

  cout << "size=" << v.size() << endl;

  cout << v[1] << endl;

  return 0;

}

上述代码定义了一个容器类MyVector,用来存储模板类型T的数据。MyVector包含push_back、pop_back等操作,可以向容器中添加或删除元素。在main函数中,我们创建了一个MyVector 类型的容器,存储了整数1、2、3,并输出了容器的大小和元素。

C++模板的使用十分灵活,可以为各种不同的场景提供支持。当我们需要定义适用于多种数据类型的函数或类时,模板是一个非常好的选择。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复