全部来自 AI 原创生成并经逐题审校的题目,带 精品 标记的为 AI 复审通过。整卷生成请去组卷。
定义类 Num: class Num { int n; public: Num(int x) : n(x) {} int value() const { return n; } }; 主函数中有: Num a[5] = { Num(2), Num(4), Num(6), Num(8), Num(10) }; Num* p = a + 2; cout << (p - 1)->value() << ' ' << p[2].value(); 程序输出为 ____。
登录后查看答案
将含 5 个整数的一维数组命名为 score,并在语句中引用其第一个元素。补全:定义语句 int score[____]; 引用表达式 score[____]。
有如下C++程序: class X { public: int v; X(int n){ v = n; } }; int main(){ X a[3] = { X(2), X(5), X(8) }; X *p = a; p++; cout << p->v << endl; p++; cout << (*p).v << endl; p = a; cout << (p+1)->v << endl; } 程序第一个输出是____,第二个输出是____,第三个输出是____。
判断:定义 int data[5] = {4, 7}; 后,data[1] 引用第二个元素且值为 7,data[4] 引用第五个元素,而 data[5] 是该数组最后一个元素的合法引用。
定义 int a[3][4];,按照 C++ 二维数组的下标规则,a[1][2] 表示第 1 行第 2 列的元素。判断该表述是否正确。
阅读下列关于类成员的说法,正确的是哪一项? A. 非静态成员函数中的 this 指针指向当前调用对象,静态数据成员由该类的所有对象共享 B. 静态成员函数中的 this 指针指向调用它的对象 C. 每个对象都拥有一份独立的静态数据成员 D. 静态数据成员只能通过对象名访问
定义 `class Module { public: int id; Module(int x) : id(x) {} };`,并创建对象数组 `Module slots[3] = {Module(21), Module(34), Module(55)};`。现要声明对象指针 `p`,使其指向数组中 `id` 为 34 的那个对象,且声明后可用 `p->id` 访问该成员。请填入完整声明:____
已定义类 Cell,且其对象可默认构造。执行 Cell a[4]; Cell* p = a; 后,有人断言:“p + 3 指向数组 a 的第三个对象。”请判断该断言是否正确。
判断:用 `ofstream out("result.txt");` 打开文件后,可通过 `out << "完成";` 将文本写入该文件。
已包含 <fstream> 和 <iostream>,并使用命名空间 std。下面代码要用 fail() 成员函数判断 data.txt 是否打开失败,空处应填:ifstream fin("data.txt"); if (____) cout << "打开失败";
判断下列说法的正误:在STL中,map容器中存放的元素是键值对,键不允许重复;而list容器是双向链表结构,不支持通过下标随机访问元素。
设 vector<int> v={4,7,9,12},迭代器 it 指向 v.begin()。依次执行 ++it、it++、--it 后,it 指向的元素值为____。
在C++程序中,若需存储键值对并通过键快速查找对应值,应选用STL容器中的 ____ 容器;若需频繁在任意位置插入和删除元素,可选用 ____ 容器。
下列关于C++类模板的叙述中,正确的是: A. 类模板定义时用 template 声明类型参数,实例化时须用如 Stack<int> 的形式指定具体类型 B. 类模板在使用时不需要指定类型参数,编译器会自动推导出所有成员类型 C. 类模板实例化后生成的类不能再创建对象 D. 类模板中不能包含成员函数
阅读以下 C++ 程序段,若程序运行后输出为 13,则变量 N 的值是( )。 int cnt = 0; for (int i = 1; i <= N; ++i) { for (int j = i; j <= 9; j += 2) { if ((i + j) % 3 != 0) { ++cnt; } } } cout << cnt << endl; A. 4 B. 5 C. 6 D. 7
在 C++ 中,类 Device 声明了纯虚函数 virtual void start() = 0;,且未定义该函数的实现。Device 是____,不能直接创建 Device 类型的对象。
判断:在 C++ 中,声明 `class Derived : Base {};` 时,省略继承方式等价于 `public` 继承。
阅读代码,空格处应填写什么,才能定义 `Parcel` 类的析构函数? ```cpp class Parcel { public: Parcel() { } ____ { } }; ```
有如下C++程序: class Demo { public: Demo() { cout << "C"; } ~Demo() { cout << "D"; } }; int main() { Demo d; cout << "M"; return 0; } 执行该程序时,屏幕上的输出是( ) A. CMD B. CDM C. MCD D. MDC
执行以下代码后,尚未释放的动态分配块数为____。 ```cpp int* p = new int[4]; int* q = new int; delete[] p; p = new int; delete q; ```