Visual C++课件 第十章 模板.pptxVIP

  • 3
  • 0
  • 约小于1千字
  • 约 56页
  • 2020-05-12 发布于山东
  • 举报
《计算基础——C++语言实现》;10.1 函数模板 ;;;;; 函数模板的实例化是在函数调用时由编译器来完成的。当编译器遇到一个函数调用时,如果仅存在函数模板,便会根据实参表中实参的类型和已定义的函数模板生成一个模板函数,该模板函数的函数体与函数模板的函数体相同,而形参表中的类型则以实参表中的实际类型为依据。;下图是【例10-2】实例化的模板函数示意图。;;【例10-3】编写一个程序,其功能是查找一维数组a中第一个值为x的元素的下标。如果不存在该元素则返回-1。 问题求解思路:问题中没有限定数组元素的数据类型,因此,采用泛化编程技术,设计解决该类问题的函数模板,忽略具体的数据类型,重点关注算法的实现。;;;函数模板与函数重载的差别: 重载函数各函数体内可以执行不同的代码,但同一个函数模板实例化的不同模板函数都执行相同的代码,仅仅是处理的数据的类型不同而已。 当函数模板与一般函数同名时,遵行下面的调用顺序: 一个函数调用首先寻找参数完全匹配的一般函数,如果找到就调用它; 寻找一个函数模板,使其实例化,生成一个匹配的模板函数,然后调用该模板函数。;10.2 类模板 ;;;;10.2 类模板 ;;10.2 类模板 ;;;;;;;;;;10.2 类模板 ;10.3 应用实例——顺序表类模板设计 ;10.3 应用实例——顺序表类模板设计 ;10.3 应用实例——顺序

文档评论(0)

1亿VIP精品文档

相关文档