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

瓯北网站建设/免费建一个自己的网站

瓯北网站建设,免费建一个自己的网站,展示形网站怎么建,湛江网站建设推广IntArray 类为预定义的整型数组类型提供了一个有用的替代类型。如果用户希望使用一 个double 或string 类型的数组,那该怎么办呢?实现一个double 类型的数组与IntArray 类的 区别只是在其所包含的元素的类型不同,而代码本身无需改变。 C的…

IntArray 类为预定义的整型数组类型提供了一个有用的替代类型。如果用户希望使用一

个double 或string 类型的数组,那该怎么办呢?实现一个double 类型的数组与IntArray 类的

区别只是在其所包含的元素的类型不同,而代码本身无需改变。

C++的模板设施提供了一种机制,它能够将类成函数定义内部的类型和值参数化。

parameterizing 我们要到10.1 节才会讨论值参数,这些参数在其他方面不变的代码中

用作占位符,以后这些参数会被绑定到实际类型上,可能是内置的类型也可能是用户定

义的类型。例如在Array 类模板中,我们把数组所包含的元素的类型参数化以后,当我

们实例化instantiate 一个特定类型的实例时,如int、double 或string 类型的Array 数组,

就可以在程序中直接使用这三个实例,就好像我们已经显式地为它们编写过代码一样。现在

来看一下怎样把IntArray 类转换成Array 类模板。下面是定义

template < class elemType >

class Array {

public:

// 把元素类型参数化

explicit Array( int size = DefaultArraySize );

Array( elemType *array, int array_size );

Array( const Array &rhs );

virtual ~Array() { delete [] ia; }

bool operator==( const Array& ) const;

bool operator!=( const Array& ) const;

Array& operator=( const Array& );

int size() const { return _size; }

virtual elemType& operator[](int index){ return ia[index]; }

virtual void sort();

virtual elemType min() const;

virtual elemType max() const;

virtual int find( const elemType &value ) const;

protected:

static const int DefaultArraySize = 12;

int _size;

elemType *ia;

};

关键字template 引入模板参数由一对尖括号< > 括起来——本例中有一个参数

elemType 关键字,class 表明这个参数代表一个类型标识符,elemType 代表实际的参数名。

它在Array 类定义中出现了七次,都是作为实际类型的占位符。

在Array 类的每次实例化中,不论是实例化为int、double 或string 等等,实例化的实际

类型都将代替elemType 参数,下面的例子演示了怎样使用Array 类模板

#include <iostream>

#include "Array.h"

int main()

{

const int array_size = 4;

// elemType 变成了int

Array<int> ia(array_size);

// elemType 变成了double

Array<double> da(array_size);

// elemType变成了char

Array<char> ca(array_size);

int ix;

for ( ix = 0; ix < array_size; ++ix ) {

ia[ix] = ix;

da[ix] = ix * 1.75;

ca[ix] = ix + 'a';

}

for ( ix = 0; ix < array_size; ++ix )

cout << "[ " << ix << " ] ia: " << ia[ix]

<< "/tca: " << ca[ix]

<< "/tda: " << da[ix] << endl;

return 0;

}

http://www.lbrq.cn/news/1450855.html

相关文章:

  • 西安网站改版的公司/电子商务网站建设规划方案
  • 中国重庆网站建设/ks免费刷粉网站推广马上刷
  • 南宁定制网站建设/互联网推广销售是做什么的
  • 招聘网站报表怎么做/公司网站建设全包
  • 重庆建设厂招聘信息网站/seo是什么级别
  • wordpress的极限访问量/深圳seo优化服务
  • 用python导入wordpress/关键词优化工具有哪些
  • 高校网站建设/今日热点新闻2022
  • 买的服务器做两个网站/免费发布推广平台
  • 建立个人免费网站/win7优化软件
  • 织梦网站主页文章列表调用/怎么找精准客户资源
  • 做网站具体收费/360应用商店
  • 无锡网站建设推广服务/seo公司哪家好用
  • 建网站需成本多少钱/竞价推广托管多少钱
  • 学网站开发首先学哪些基础/收录批量查询
  • win7电脑做网站/查指数
  • 杭州建网站/seo优化师
  • 设计相关网站/站长之家新网址
  • 个人网站申请空间/西安高端模板建站
  • 上海个体户注册代办/吉林seo外包
  • 百度做网站续费费用/会员制营销方案
  • 闲鱼网站建设费用/成都网站快速排名优化
  • 简易做海报网站/免费测试seo
  • 做淘宝网站代理/郑州seo优化
  • 网站建设经验典型/微信营销平台哪个好
  • 网站注册系统/爱站网站排行榜
  • 做库房推广哪个网站好/百度数据开放平台
  • 房地产做网站的意义/网站排名优化课程
  • 建筑网格布/网站推广的优化
  • 怎么做二级网站域名/腾讯搜索引擎入口
  • 智慧城市SaaS平台|市容环卫管理系统
  • 2.4 组件通信
  • 关于assert()函数,eval()函数,include
  • Nginx负载均衡配置
  • 介绍JAVA语言、介绍greenfoot 工具
  • uniapp 跨端开发