(含答案)C++笔试题你可以答对多少?

1.每个C++程序中都必须包含的函数名?(A)

A.main

C.Name

B.MAIN

D.class

2.没有使用private关键字定义类的数据成员,则默认为?(A)

A.private

C.protected

B.public

D.friend

3.int Func(int, int); 不可与下列哪个函数构成重载 (B)

A、int Func(int, int, int);

B、doublic Func(int, int);

C、doublic Func(double, double);

D、doublic Func(int, double);

4.A *pa = new A10; delete pa;类A的构造函数和析构函数执行了几次(D)

A、1 1

B、10 10

C、1 10

D、10 1

5、以下代码是否完全正确,执行可能得到的结果是(B)

class A

{

int i;

};

class B

{

A *p;

public:

B() {p = new A;}

~B(){delete p;}

};

void sayHello(B b){}

int main()

{

B b;

sayHello(b);

}

A、程序正常运行

B、程序编译错误

C、程序崩溃

D、程序死循环

6.下列关于STL中vector容器和list容器的区别,描述错误的是(D)

A、vector底层实现是数组,list是双向链表

B、vector支持随机访问,list不支持

C、vector是顺序内存,list不是

D、vector随机访问性能差,插入删除性能好,list随机访问性能好,插入删除性能差

点击空白处查看答案

7.下列关于类和对象的描述,错误的是?(C)

A、类是一种类型,它封装了数据和操作

B、对象是类的实例

C、一个类的对象只有一个

D、一个对象属于某个类

8.对类的构造函数和析构函数描述正确的是?(A)

A、构造函数可以重载,析构函数不能重载

B、构造函数不能重载,析构函数可以重载

C、构造函数可以重载,析构函数也可以重载

D、构造函数不能重载,析构函数也不能重载

9.以下说法中正确的是( D )

class A

{

virtual void func1();

void func2();

};

classB:class A

{

void func1()

{

vout << "fun1 in class B" << endl;

}

}

virtual void func2()

{

cout << "fun2 in class B" << endl;

}

A、A中的func1和B中的func2都是虚函数

B、A中的func1和B中的func2都不是虚函数

C、A中的func2是虚函数,B中的func1不是虚函数

D、A中的func2不是虚函数,B中的func1是虚函数

10.以下哪种情况构成函数重载?(多选)

A、函数返回值不同,参数个数相同,参数类型相同,参数默认值不同

B、函数返回值不同,参数个数相同,参数类型不同,参数默认值相同

C、函数返回值相同,参数个数相同,参数类型相同,参数默认值不同

D、函数返回值相同,参数个数不同,参数类型相同,参数默认值相同

相关推荐
lemon_sjdk5 小时前
ObjectProperty
java·开发语言·算法
大模型码小白5 小时前
Spring AI Tool 实现自然语言操作 MySQL 数据库详解
服务器·开发语言·数据库·人工智能·python·mysql·spring
hh9505 小时前
Agent Plan x DeepSeek Harness:Agent 供应链安全与第三方插件审计
java·开发语言·安全·agent plan·adg成都社区·adg社区
「QT(C++)开发工程师」6 小时前
C++ std::move 详解
开发语言·c++
matlab代码6 小时前
基于matlab的玉米种子计数设计(GUI界面)【源码58期】
开发语言·matlab
c#上位机6 小时前
C#上位机项目实战——C#的dll项目编译时拷贝到指定目录下
开发语言·c#
Littlehero_1216 小时前
QT自定义控件之内嵌报表(4)(源码开源)
开发语言·qt
晓晓_za8986686 小时前
开源 GEO 优化源码二次开发:贴牌改造与业务模块扩展实践
java·运维·服务器·开发语言·性能优化·开源
曹牧7 小时前
C#:数组与列表的差异
开发语言·c#
LINgZone27 小时前
后端Java编码规范
java·开发语言