- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C++primer第⼗六章答案
C++primer 第⼗六章答案
16.1
当编译器实例化⼀个模板时,它会创建⼀个新的“实例”。模板使⽤实际的模板参数代替对应的模板参数。
16.2
templatetypename T
int compare(const T lhs, const T rhs)
{
if(lhs rhs) return -1;
if(rhs lhs) return 1;
return 0;
}
16.3
模板参数错误,Sales_data类没有定义
16.4
templatetypename I ,typename V
auto Find( I beg, I end ,const V v)
{
for (; beg != end *beg != v ; ++beg);
return beg ;
}
16.5
templatetypename T ,unsigned N
void PrintArray(const T(a)[N])
{
for (auto i : a)
{
std ::cout i ;
}
std ::cout std :: endl;
}
16.6
templatetypename T , unsigned N
T* Begin( T(a)[N])
{
return a ;
}
templatetypename T , unsigned N
T* End( T(a)[N])
{
return a + N ;
}
16.7
templatetypename T , unsigned N constexpr
int Size(const T(a)[N])
{
return N ;
}
16.8
因为相⽐更多类定义了!=,这样做可以减少模板对参数的要求,模板程序应该尽量减少对实参类型的要求。
16.9
⼀个函数模板是⼀个公式,可以从中⽣成不同类型版本的该函数。
类模板是⽣成类的蓝图。类模板与函数模板的不同之处在于,编译器⽆法推断类模板的模板参数类型。相反,正如我们所见很多时候,
要使⽤类模板,我们必须提供额外的信息放在模板名称后⾯的尖括号内。
16.10
当我们实例化⼀个模板类时,编译器会使⽤模板类型参数从模板中实例化⼀个特定类型的类。
16.11
模板类不是⼀个类型,我们在使⽤⼀个模板类时必须提供参数实例化出⼀个特定的类型。应该修改为
void insert(ListItem elemType *ptr, elemType value);
ListItem elemType *front, *end;
16.11
#pragma once
#include vector
#includememory
#includestring
using namespace std ;
templatetypename Value class BlobPtr ;
templatetypename Value
class Blob
{
friend class BlobPtrValue;
public:
typedef typename vectorValue::size_type size_type;
Blob(): data(make_sharedvectorValue()) {}
Blob(initializer_listValueil) :data(make_sharedvectorValue(il)) {}
size_type size()const { return data-size(); }
bool empty()const { return data-empty(); }
void push_back(const Value v) { data-push_back(v); }
void push_back(Value v) { data-push_back(move(v)); }
void pop_back();
Value front();
Value back();
Value operator[](size_type n);
Value front()const;
Value back()const;
Value opera
您可能关注的文档
- 2023年计算机应用心得体会(通用12篇) .pdf
- 大学信息技术基础(19-20-1)学习通课后章节答案期末考试题库2023年.pdf
- 煤矿开采学试题及答案(一) .pdf
- 2023届辽宁省县级重点高中联合体高三第一次模拟考试英语试题.pdf
- 地质勘查资料综合整理 .pdf
- 计算机三级网络技术练习题及答案2023 .pdf
- 2020年中考生物模拟试卷附答案 .pdf
- 上海中考语文模拟题及参考答案 .pdf
- 2021年成人高等考试《民法》(专升本)真题及答案 .pdf
- 人教版2023年高考地理第一次模拟考试卷及答案(含四套题) .pdf
- 2024 医院工作总结及 2025 年工作计划(范本).pdf
- 2024 医院工作总结及 2025 年工作计划(范本).docx
- 关于X医院2024年工作总结及2025年工作计划(详细版).docx
- 关于X医院2024年工作总结及2025年工作计划(详细版).pdf
- 人教版数学四年级下册位置与方向2教案与反思3篇2024 .pdf
- 传媒伦理与法规(山东联盟)智慧树知到答案2024年山东政法学院.pdf
- 人教版数学五年级下册第16课容积和容积单位教学设计3篇2024 .pdf
- 人教版数学六年级下册圆柱的体积优秀教案(推荐3篇) .pdf
- 职业教育高质量发展赋能新质生产力的内在逻辑与三融”路径.pdf
- 共同机构所有权与企业新质生产力.pdf
文档评论(0)