1
2
因此,简单的答案是,对于您正在创建的每个类型,都会生成模板代码(以及随后的编译)。所以在这个例子中:
每个都是类型
但是,如果您在整个代码库中使用它,这种情况就会改变。请记住,包含此标头的每个转换单元(有点类似于cpp文件)都将重新定义类型
|
2
-1
实际上,您正在创建对象: 条形图<1>bar1; 条形图<1>bar2 ... 条形图<1>bar10000; 10000次=>在运行时实例化。不是在编译时。 编译器用于编译、检查编程、创建可执行文件。 一旦编译后没有任何错误,在执行过程中,将根据代码流创建对象。在创建对象时处理内存管理,以处理运行时的性能问题(如果有的话)。 您可以通过以下方式识别: 实例 cout内部构造函数,以了解构造函数被调用的次数。 |