关于类模板的说法正确的是()

关于类模板的说法正确的是()


A、

类模板的主要作用是生成抽象类


B、

类模板实例化时,编译器将根据给出的模板实参生成一个类


C、

在类模板中的数据成员具有同样类型


D、

类模板中的成员函数没有返回值


【正确答案】:B
【题目解析】:

类模板也称为参数化类。初始化类模板时,只要传给它指定的数据类型(例如double或int),编译器就用指定类型替代模板参数产生相应的模板类。即类模板实例化时,编译器将根据给出的模板实参生成一个类。故B正确。

编译器通过类模板可以自动生成多个面向不同数据类型的类,这也是代码复用的情况。故A错误。

定义一个类时,需要指明类中各成员变量的类型。如果类中成员变量的类型不同,哪怕这些类的结构非常相似,定义的成员变量和成员函数几乎一样,也需要定义不同的类,用来保存不同的数据集合。故C错误。

使用类模板,用户可以为类定义一种模式,使得类中的某些成员变量、默认成员函数的参数、某些成员函数的返回值及局部变量能取任意类型,既可以是系统预定义的类型,也可以是用户自定义的类型。但有返回值。故D错误。


Top