当前位置: 代码迷 >> 综合 >> 牛客C++专项训练5.20 构造函数+模板+malloc
  详细解决方案

牛客C++专项训练5.20 构造函数+模板+malloc

热度:71   发布时间:2023-12-22 02:22:55.0

1.以下叙述中正确的是(    )

正确答案: B D   你的答案: A B D

A在C++中数据封装是通过各种类型来实现的  C++通过类来实现封装性,把数据和与这些数据有关的操作封装在一个类中

B在C++中,数据封装可以由struct关键字提供   C++中虽然struct的默认封装类型为public,但是你也可以设置为private的形式

C数据封装就是使用结构类型将数据代码连接在一起  封装是面向对象编程中的把数据和操作数据的函数绑定在一起的一个概念(并不是单纯将数据代码连接起来,是数据和操作数据的函数.),这样能避免受到外界的干扰和误用,从而确保了安全。

D数据封装以后,仍然可以不通过使用函数就能直接存取数据  static成员采用类名可直接访问   若成员变量是public,可采用点运算符直接访问对象成员。

 

2.在C++里,同一个模板的声明和定义是不能在不同文件中分别放置的,否则会报编译错误。为了解决这个问题,可以采取以下哪些办法:

正确答案: A B C   你的答案: B C

A模板的声明和定义都放在一个.h文件中。

B模板的声明和定义可以分别放在.h和.cpp文件中,在使用的地方,引用定义該模板的cpp文件。

C使用export使模板的声明实现分离。

D以上说法都不对

组织模板代码有三种方式
1.包含模型(常规写法 将实现写在头文件中)