7.1 Template

Template 的具现行为

a.定义指针,不会具现

b.定义reference会具现

c.函数在使用的时候会被具现

Template 的错误信息

有些于类型相关的错误和判断将会在具体实现的时候被发现。

a.赋值

b.比较

Template 名称的决议方式:

  这意味着一个编译器必须保持两个scope contexts:
  1)"scope of the template declaration",用以专注于一般的template class.
  2)"scope of the template instantiation",用以专注于特定的实体.
  编译器的决议算法必须决定哪一个才是适当的scope,然后在其中搜寻适当的name.

MemberFunction 具现

a.编译器如何找到函数定义:I.包含template program text file 2.Point.h来坚持.c或者.CPP文件

b.解决方案之一就是,根本忽略这项要求,把一个已经具现出来的class的所有member functions都产生出来.另一种策略就是仿真链接操作,检测看看哪一个函数真正需要,然后只为它们产生实体.

c.  解决方案之一就是产生多个实体,然后从连接器中提供支持,只留下其中一个实体,其余都忽略.另一个办法就是由使用者来导引"仿真链接阶段"的具现策略,决定哪些实体才是需要的.



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章:

  • 2021-08-13
  • 2022-12-23
  • 2021-05-08
  • 2021-12-23
  • 2021-06-13
  • 2021-12-24
  • 2022-12-23
猜你喜欢
  • 2021-09-20
  • 2021-12-26
  • 2021-06-13
  • 2021-09-20
  • 2021-09-19
相关资源
相似解决方案