以下数组初始化正确的是( )。Aint a[];a={1,2,3,4,5,6};Bint[] a={1,2,3,4,5,6};Cint a[6]={1,2,3,4,5,6};Dint[] a;a={1,2,3,4,5,6};
时间: 2023-10-04 10:06:10 浏览: 103
正确的选项是 B:`int[] a = {1, 2, 3, 4, 5, 6};`。这是 Java 中初始化整型数组的正确方式。选项 A 中,第一行仅仅声明了一个整型数组变量,但是没有初始化,第二行则试图使用花括号对其进行初始化,这是错误的。选项 C 中,声明数组时不能指定长度并初始化。选项 D 中,第一行仅仅声明了一个整型数组变量,但是没有初始化,第二行又试图使用花括号对其进行初始化,这也是错误的。
相关问题
#include <iostream> using namespace std; class A { int a; public: A(int i = 0) { a = i; } int Geta() { return a; } }; class B { A a; int b; public: B(int i = 0, int j = 0): ______ { b = i; } void display() { cout << a.Geta() << ',' << b << endl; } }; int main() { B b[2] = { B(1, 2), B(3, 4) }; for (int i = 0; i < 2; i++) ___; }
这是一个 C++ 代码,定义了两个类 A 和 B,B 类包含了一个 A 类对象和一个整型变量 b。下划线处需要填写代码才能使程序正确运行。
正确填写方法如下:
```cpp
#include <iostream>
using namespace std;
class A {
int a;
public:
A(int i = 0) {
a = i;
}
int Geta() {
return a;
}
};
class B {
A a;
int b;
public:
B(int i = 0, int j = 0): a(i) { // 在这里使用初始化列表初始化 a 对象
b = j;
}
void display() {
cout << a.Geta() << ',' << b << endl;
}
};
int main() {
B b[2] = {
B(1, 2),
B(3, 4)
};
for (int i = 0; i < 2; i++)
b[i].display(); // 在这里调用 display() 函数
}
```
代码解析:
1. 类 A 包含一个私有成员变量 a 和一个公有成员函数 Geta()。构造函数默认将 a 初始化为 0。
2. 类 B 包含一个私有成员变量 a 和一个私有成员变量 b,以及一个公有成员函数 display()。构造函数初始化 a 对象时需要使用初始化列表,将 i 赋值给 a。
3. 在主函数中,定义了一个包含两个 B 类对象的数组 b。由于 b 是一个数组,所以需要使用循环来调用每个对象的 display() 函数,输出其成员变量 a 和 b 的值。
阅读全文