【发布时间】:2022-12-19 00:15:04
【问题描述】:
我正在阅读一本关于模板如何工作的书,但我很难理解模板的这种解释。
它说
当编译器看到模板的定义时,它不会生成代码.它仅在我们实例化模板的特定实例时生成代码。代码仅在我们使用模板时(而不是在我们定义模板时)生成这一事实会影响我们如何组织源代码以及何时检测到错误......要生成实例化,编译器需要具有定义一个模板的代码函数模板或类模板的成员函数。因此,与非模板代码不同,模板的标头通常包括定义和声明。
“生成代码”到底是什么意思?我不明白编译函数模板或类模板与常规函数或类相比有什么不同。
【问题讨论】: