当前位置: 首页 > news >正文

动态网站开发 清华大学个人网站搭建

动态网站开发 清华大学,个人网站搭建,最好网站开发公司电话,c2c的特点有哪些归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍 收藏⭐ 留言​📝 勤奋,机会,乐观…

归纳编程学习的感悟,
记录奋斗路上的点滴,
希望能帮到一样刻苦的你!
如有不足欢迎指正!
共同学习交流!
🌎欢迎各位→点赞 👍+ 收藏⭐ + 留言​📝
勤奋,机会,乐观是成功的三要素!

一起加油!

目录

​编辑

一、类模板的定义和使用:

        💦例如,声明两个类,分别用来比较整数和浮点数的大小。

🔑说明:

💦例:编写一个类模板,比较两个整数、浮点数和字符数据的大小。

 🔑说明:

二、总结: 

三、共勉: 


 

一、类模板的定义和使用:

        昨天介绍了函数模板,建立了一个通用函数,将很多个处理不同数据类型、相同逻辑功能的函数抽象成一个统一的函数,用来简化程序设计。对于类的声明,也存在同样的问题。如几个类的逻辑功能相同,但数据类型不同,却要重复性的写很多代码。

        💦例如,声明两个类,分别用来比较整数和浮点数的大小。

class Compare_int{private:int x,y;public:Compare_int(int a,int b){x=a;y=b;}int max(int a,int b){return a>b?a:b } int min(int a,int b){return a<b?a:b } 
};
class Compare_float{private:float x,y;public:Compare_float(float a,float b){x=a;y=b;}float max(float a,float b){return a>b?a:b;}float min(float a,float b){return a<b?a:b;}
};

        这两个类的声明的类型不同,但逻辑功能非常相似,有很强的重复性。我们可以运用函数横板的思路,为类也声明一个通用的类模板,使得实例化类中的某些数据成员、某些成员函数的参数或者返回值,能取任意的数据类型。 

        类模板的一般定义格式如下:

template <class T>

class  类名

{

     };

🔑说明:

  • (1)template是定义类模板的关键字,总是放在模板定义和声明的最前面。
  • (2)<classT>必须用尖括号<>括起来,其中T为类型参数,它实际上是一个虚拟的类型名,当使用类模板时,T被替换为某种实际的数据类型(例如int,char,float 等)从而实现类多用。T也可以用其他合法的标识符替换。
  • (3)类的定义方式与之前讲到的类的定义类似。
  • (4)类模板是对一组类的抽象,某一个类是对类模板的实例化。

在声明了一个类模板后,如何使用它,如何使它变成一个实际的类,又如何生成一个具体的对象? 

一般形式为:
类模板名<实际类型名>      对象名(参数表);

下面通过具体的例子说明类模板的定义和使用方法.

💦例:编写一个类模板,比较两个整数、浮点数和字符数据的大小。

#include<iostream>
using namespace std;
template <class T>
class Compare{private:T x,y;public:Compare(T a,T b){x=a;y=b;}T max();T min();
}; 
template <class T>
T Compare<T>::max()
{return x>y?x:y;
}
template <class T>
T Compare<T>::min()
{return x<y?x:y;
}
int main()
{Compare<int> cmpi(4,9);cout<<"两个整数的最大值:"<<cmpi.max()<<endl; cout<<"两个整数的最小值:"<<cmpi.min()<<endl; Compare<float> cmpf(3.93,7.78);cout<<"两个小数的最大值:"<<cmpf.max()<<endl; cout<<"两个小数的最小值:"<<cmpf.min()<<endl; Compare<char> cmpc('k','q');cout<<"两个字符的最大值:"<<cmpc.max()<<endl;cout<<"两个字符的最小值:"<<cmpc.min()<<endl;return 0;
}

 🔑说明:

        该程序定义了一个类模板 Compare<T>,其模板类型参数为 T。在该类模板中,构造函数的两个形参 a、b,两个私有的数据成员 x、y,以及两个成员函数 max()和 min()的返回类型,都是用模版类型参数T声明的变量。

        该程序的主函数中生成了三个模板类,并生成了三个对象,其语句分别为:Compare<int>cmpi(4,9);(此时T被指定的类型为int,类对象名为cmpi。)Compare<float>cmpf(3.93,7.78);(此时T被指定的类型为float,类对象名为cmpf。)Compare<char>cmpc('k','p')(此时T被指定的类型为char,类对象名为cmpc。)总结定义类模板时应注意以下几点:
(1)声明类模板时,要在类的前面加一行语句: 

template<class 虚拟类型参数>

(2)用类模板定义对象时用以下形式: 

类模板名<实际类型名>                对象名;
             类模板名<实际类型名>                对象名(参数表);

(3)如果在类模板外定义成员函数,应写成类模板形式 :

template<class 虚拟类型参数>
                                          函数类型类模板名<虚拟类型参数>::成员函数名(函数形参表)

{......}

二、总结: 

  •   template是定义类模板的关键字,总是放在模板定义和声明的最前面。
  • <classT>必须用尖括号<>括起来,其中T为类型参数,它实际上是一个虚拟的类型名。
  • 类模板是对一组类的抽象,某一个类是对类模板的实例化。

三、共勉: 

        以上就是我对C++模板——(3)类模板的理解,希望本篇文章对你有所帮助,也希望可以支持支持博主,后续博主也会定期更新学习记录,记录学习过程中的点点滴滴。如果有不懂和发现问题的小伙伴,请在评论区说出来哦,同时我还会继续更新对C++模板的理解,请持续关注我哦!!! 

http://www.15wanjia.com/news/22169.html

相关文章:

  • 软件开发技术培训课程苏州seo营销
  • 会网站制作的职业是四川seo多少钱
  • html怎么做移动端网站安徽seo推广公司
  • 手机网站怎么做微信登陆黑马培训
  • 用自己的电脑建网站百度人工服务
  • 自己做网站卖水果网站推广优化网址
  • 24小时永久有效在线观看优化推广什么意思
  • 微信官方网站是多少钱搜索引擎优化网站
  • 江西做网站的百度seo刷排名网址
  • dede网站源码seo建站系统
  • 用织梦做领券网站百度首页网址
  • 网站开发项目的简介跨境电商关键词工具
  • 做网站背景图片seo网站推广首页排名
  • 大连网站建设谁家好网络推广的主要工作内容
  • seo网站系统怎么才能建立一个网站卖东西
  • 浏阳做网站的有哪几家seo百度关键字优化
  • 个人理财的网站开发长春网站建设策划方案
  • soho外贸网站建设seo管理系统
  • 服务范围 网站建设公司电商运营工作内容
  • 设计成功一个电子商务网站关键词优化搜索引擎
  • 橙色可以做哪些网站mac蜜桃923色号
  • 做地产的设计网站站长工具的网址
  • 寿县有做网站开发的吗大连做优化网站哪家好
  • 张家港外贸型网站建设网络营销方式哪些
  • 贵州建设网老网站域名被墙查询
  • 做企业网站需要做什么优化关键词的方法
  • 关于华大18年专注seo服务网站制作应用开发双滦区seo整站排名
  • 专做运动品牌的网站公司企业网站模板
  • 青岛网站建设哪家湘潭网站建设
  • dedecms婚纱摄影网站模板疫情最新资讯