测验概述
已完成 0/10 个问题
问题:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
信息
Java 测试
您已完成过测验,因此您不能再测验。
测验载入中...
您必须登入或注册才能开始测验。
您必须先完成以下测验才能开始:
测验结果
答对 0/10 个问题
答题时间:
时间已花费
类别
- 未分类 0%
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 已答
- 回顾
-
1/10问题
1. 问题
以下代码的输出是什么
#include <iostream> using namespace std; class A { public: A() { cout << "A"; } ~A() { cout << "~A"; } }; class B : public A { public: B() { cout << "B"; } ~B() { cout << "~B"; } }; int main() { A *a = new B(); delete a; return 0; }
正确
基类指针指向派生类对象时,如果基类析构函数不是虚函数,只会调用基类的析构函数。
错误
基类指针指向派生类对象时,如果基类析构函数不是虚函数,只会调用基类的析构函数。
-
2/10问题
2. 问题
以下关于C++智能指针的描述,错误的是
正确
std::auto_ptr已被弃用,C++11推荐使用std::unique_ptr。
错误
std::auto_ptr已被弃用,C++11推荐使用std::unique_ptr。
-
3/10问题
3. 问题
以下代码的输出是什么
#include <iostream> using namespace std; int main() { int a = 5; int b = 2; cout << (a / b); return 0; }
正确
整数除法结果仍为整数,小数部分被截断。
错误
整数除法结果仍为整数,小数部分被截断。
-
4/10问题
4. 问题
以下关于C++ Lambda表达式的描述,正确的是
正确
Lambda表达式可以通过捕获列表捕获局部变量。
错误
Lambda表达式可以通过捕获列表捕获局部变量。
-
5/10问题
5. 问题
以下代码的输出是什么
#include <iostream> using namespace std; int main() { int a = 5; int *p = &a; cout << (p == nullptr); return 0; }
正确
p指向a,不为空指针,因此输出0。
错误
p指向a,不为空指针,因此输出0。
-
6/10问题
6. 问题
以下关于C++多线程的描述,正确的是
正确
std::thread是C++11引入的多线程支持类。
错误
std::thread是C++11引入的多线程支持类。
-
7/10问题
7. 问题
以下代码的输出是什么?
#include <iostream> using namespace std; int main() { int a = 5; int &b = a; int c = b; c = 10; cout << a; return 0; }
正确
c是b的副本,修改c不会影响a。
错误
c是b的副本,修改c不会影响a。
-
8/10问题
8. 问题
以下关于C++命名空间的描述,错误的是
正确
命名空间的主要作用就是解决名称冲突。
错误
命名空间的主要作用就是解决名称冲突。
-
9/10问题
9. 问题
以下代码的输出是什么
#include <iostream> using namespace std; int main() { int a = 5; int *p = &a; int *&r = p; *r = 10; cout << a; return 0; }
正确
r是p的引用,通过*r修改的是a的值。
错误
r是p的引用,通过*r修改的是a的值。
-
10/10问题
10. 问题
以下关于C++类型转换的描述,正确的是
正确
static_cast可以用于多态类型的向下转换,但不如dynamic_cast安全。
错误
static_cast可以用于多态类型的向下转换,但不如dynamic_cast安全。