C++的通用类template用法

原创 2018年04月15日 17:07:27

(1)通用类:

                什么是通用类呢?一般情况下,如果一个程序要定义功能相同但是数据类型却不相同的多个类的时候,会不会觉得代码有点冗长呢?明明只是数据类型不一样,却还要为此多定义几个类来实现一样的功能,这个时候,通用类就派上很大的用场了,它只需定义一次,就可以传入不同类型的数据来实现同样的功能。

(2)类声明的实例:

            1.声明:

            template<class genType>//其中genType定义不同的数据类型

            class genclass{

                    genType storage[50];//定义一个genType类型的数组,当然其中的大小也可以自定义

                    ..................//你要实现的功能                    

};

       OR:

               template<class genType,int size>

                class genclass{

                    genType storage[size];//数组大小可自行定义,在调用的时候如果没有定义数组大小,则使用默认值50,

     };      

             2.定义:

                genclass<int>object1;//对第一种类声明定义一个对象

                genclass<int,100>object2;//对第二种类声明定义一个对象

   (3)函数声明的实例:

            例如交换两个数值:

      1.定义:         template<class genType>

                            void swap(genType &n1,genType &n2){

                                            genType temp=n1;

                                             genType n1=n2;

                                             genType n2=temp;

                            }

          2.调用:

                        swap(n,m);//n 和m是int类型

                        swap(x,y);//x,y是float类型

计算机基础win7的基本用法

-
  • 1970年01月01日 08:00

c++ 通用类型

c++ 通用类型 类似any实现:#include #include using namespace std; class __base_type { public: virtual co...
  • qq530896890
  • qq530896890
  • 2016-04-14 20:28:20
  • 1130

C++模板(template)使用介绍

1. 模板的概念。我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同。正确的调用重载函数。例如,为求两个数的最大值,我们定义MAX()函数需...
  • chenchen410
  • chenchen410
  • 2014-09-23 18:44:28
  • 35922

c++通用模板类(template class)定义实现详细介绍

有时,有两个或多个类,其功能是相同的,仅仅是数据类型不同,如下面语句声明了一个类:class Compare_int { public : Compare(int a,int b) { x=a; y=...
  • u013443618
  • u013443618
  • 2015-11-20 11:11:08
  • 7252

【C++】类模板(template)作用对比举例

一、类模板 类模板是后期C++加入的一种可以大大提高编程效率的方法 关键字template 用法 template class T {      //.... }   二、举个栗子 我们要写一个比较...
  • qq_31828515
  • qq_31828515
  • 2016-07-07 15:44:33
  • 4085

C++模板template用法总结

引言 模板(Template)指C++程序设计设计语言中采用类型作为参数的程序设计,支持通用程序设计。C++ 的标准库提供许多有用的函数大多结合了模板的观念,如STL以及IO Stream。 ...
  • qq_35637562
  • qq_35637562
  • 2017-02-15 12:37:41
  • 14878

学习实践:使用模式,原则实现一个C++数据库访问类

一、概述 在我参与的多个项目中,大家使用libMySQL操作MySQL数据库,而且是源码即复用,在多个项目中有多套相同或相似的源码,这样的复用方式给开发带来了不变,而且libMySQL的使用比较麻烦...
  • xumingxsh
  • xumingxsh
  • 2014-08-18 17:18:57
  • 3204

c++类模板的简单使用

#include #define elmtpe char//在此修改要处理的数据类型 using namespace std; /*///////////引用的函数原型/////////////...
  • xiongyangg
  • xiongyangg
  • 2014-04-20 16:30:56
  • 1143

C++类模板 template <class T>

类模板与函数模板的定义和使用类似,我们已经进行了介绍,如果您对函数模板也感兴趣,请查看:。 有时,有两个或多个类,其功能是相同的,仅仅是数据类型不同,如下面语句声明了一个类: class Com...
  • oqqQuZi1234567
  • oqqQuZi1234567
  • 2015-02-04 17:38:38
  • 17490

【C++模板】C++声明模板时能否用struct关键字代替class或者typename

我们知道C++中声明一个函数或者类的模板支持两种关键字class和typename: template struct Person { public: T age; }; 或者 tem...
  • lzhui1987
  • lzhui1987
  • 2017-03-20 19:04:19
  • 1461
收藏助手
不良信息举报
您举报文章:C++的通用类template用法
举报原因:
原因补充:

(最多只允许输入30个字)