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

建设网站如何弄好几张网站背景如何搜索关键词热度

建设网站如何弄好几张网站背景,如何搜索关键词热度,勒流网站建设,订阅号栏目里做微网站目录 一.类模板的作用 二.类模板的定义: 三.类模板的声明格式: 四.类模板对象 五.再举一个例子 一.类模板的作用 面向对象的程序设计编程实践中,我们可能会面临这样的问题:要实现比较两个数的大小。明明比较两个数的方法都一样…

目录

一.类模板的作用

二.类模板的定义:

三.类模板的声明格式:

四.类模板对象

五.再举一个例子


一.类模板的作用

        面向对象的程序设计编程实践中,我们可能会面临这样的问题:要实现比较两个数的大小。明明比较两个数的方法都一样,但是仅仅因为数据类型的不同,导致想要实现同一目标,我们就需要写好多个只有数据类型不同、其他内容都相同的类。这无疑是费时耗力、臃肿繁琐的。

        在C++中,为了解决这样的问题,引入了类模板的概念。就像泥塑的胚子一样,每次注入石膏陶土,最后都会按照要求变成外形相同的泥塑。类模板就是这样的一个胚子,数据类型就是注入的原料。

        因此,对于数据的处理方式相同、仅因为数据类型不同而定义不同的类时,我们使用类模板来简化我们的代码。

二.类模板的定义:

        将数据类型抽象出来而形成的操作集。

        类模板使用户可以为类定义一种模式,使得类中的某些数据成员、成员函数的参数和返回值能去的任意的数据类型。

三.类模板的声明格式:

template <参数>//    template  定义类模板的关键字 

                           //模板以关键字template和一个形参表开头

class 类名

{

        ……;

};

举个例子:

下面代码实现的是输入两个数,寻找最大数和最小数

#include <iostream>
using namespace std;
template <class temp>class compare
{
public:compare(temp a,temp b){this->x = a;this->y = b;}temp max(){ return x > y ? x : y; }temp min() { return x > y ? y : x; }
private:temp x; temp y;
};
int main()
{/*write your code here*/return 0;
}

将函数放在类体外定义:

一般格式为:

template <模板参数>

class 类名

{

        ……;

}

template  <模板参数>

inline 返回值类型 类名 <模板类型参数>::成员函数名(形参表)

{函数体}

 重点注意:在类体外面定义成员函数时,必须用template重写类模板声明!!!

不重新声明就会报错:

正确代码:

#include <iostream>
using namespace std;
template <class temp>class compare
{
public:compare(temp a, temp b){this->x = a;this->y = b;}temp max();temp min();
private:temp x; temp y;
};template <class temp>
inline temp compare<temp>::max()//不重新声明就会报错
{return x > y ? x : y;
}template <class temp>
inline temp compare<temp>::min()//不重新声明就会报错
{return x > y ? y : x;
}int main()
{/*write your code here*/return 0;
}

结构图:

四.类模板对象

        类模板不能直接使用,必须先实例化为相应的模板类,定义该模板类的对象之后才能使用。

        初始化类模板时,只要传给它指定的数据类型(如int float double等),编译器就用指定的类型来代替末班参数产生相应的模板类。

        用类模板定义对象的一般格式:

类名<模板实例化参数类型>对象名(构造函数实参列表)

或者:

类名<模板实例化参数类型>对象名

#include <iostream>
using namespace std;
template <class temp>class compare
{
public:compare(temp a, temp b){this->x = a;this->y = b;}temp max();temp min();
private:temp x; temp y;
};template <class temp>
inline temp compare<temp>::max()//不重新声明就会报错
{return x > y ? x : y;
}template <class temp>
inline temp compare<temp>::min()//不重新声明就会报错
{return x > y ? y : x;
}int main()
{compare<int>INT(2, 3);cout << INT.max() << endl;//3cout << INT.min() << endl;//2compare<double>DOUBLE(2.2, 3.3);cout << DOUBLE.max() << endl;//3.3cout << DOUBLE.min() << endl;//2.2return 0;
}

五.再举一个例子

本代码实现的是坐标的输入与输出。

#include <iostream>
using namespace std;
template<class temp>
class point
{
private:temp x;temp y;
public:point (temp a=0,temp b=0):x(a),y(b){}void setxy(temp, temp);void showxy(){cout << x << "," << y << endl;}temp getx() { return x; }temp gety() {return y; }
};
template<class temp>
inline void point<temp>::setxy(temp a, temp b)
{this->x = a;this->y = b;
}
int main()
{point<int>a(3, 4);a.showxy();point<float>b(1.2, 3.4);b.showxy();return 0;
}

http://www.khdw.cn/news/51398.html

相关文章:

  • 外贸建站及推广网络营销课程设计
  • 做网站用笔记本电脑个人在百度上发广告怎么发
  • 建设高端网站公司的目的无锡seo公司
  • 不正规网站制作最近一周国内热点新闻
  • 蚌埠大建设及棚户区改造官方网站深圳网站推广公司
  • 湖北网站建设哪家专业首页关键词排名
  • 一个b2c网站多少钱长治seo顾问
  • 徐州建设工程招标信息网官网百度笔记排名优化
  • 什么网站是专门做艺术字的广告投放是什么工作
  • 网站开发广告怎么写seo的研究对象
  • 八年级上册信息书怎么做网站营销型网站建设优化建站
  • 武汉网站优化苏州优化网站公司
  • 广州服装设计公司有哪些谷歌seo排名优化
  • 卡片式设计 网站宁波网站推广专业服务
  • 做网站业务员怎么查找客户百度如何添加店铺位置信息
  • 建站平台软件搜索数据
  • 杭州餐饮 网站建设网站关键词优化排名技巧
  • 政府网站信息化建设惠州百度seo找谁
  • app网站建设费用佛山seo培训
  • 合肥网站建设网站制作销售渠道及方式
  • 做资料网站是自己建服务器好还是租用好江门关键词排名优化
  • 做课程的网站深圳网站优化平台
  • 多用户网上商城二十条优化
  • 西安网站建设招聘nba最新排名
  • 关于网站建设的几点体会网络广告的形式
  • 百度搜不倒公司网站外贸网站建设公司
  • 网站开发公司徐州百度指数分析报告案例
  • 安通建设有限公司网站官网优化包括什么内容
  • 建德网站设计公司淘宝关键词优化技巧教程
  • 新建的网站怎么做seo优化百度应用下载