判断题
C++支持在类中定义静态变量。
答案解析
正确答案:A
解析:
好的,让我们来解析这道判断题。
### 题目
C++支持在类中定义静态变量。
答案: 正确
### 解析
#### 1. 静态变量的概念
在C++中,静态变量(static variable)是一种特殊的变量类型,它的生命周期和作用域与普通变量不同。静态变量的特点是:
- **生命周期**:从程序开始到结束,始终存在。
- **作用域**:取决于声明的位置,可以是全局的、局部的或类成员。
#### 2. 类中的静态变量
在类中定义静态变量时,需要注意以下几点:
- **声明**:在类中声明静态变量时,使用 `static` 关键字。
- **定义**:静态变量必须在类外定义并初始化(除非它是常量整型)。
- **共享性**:所有对象共享同一个静态变量,即静态变量是类的所有实例共享的数据。
#### 3. 示例
下面是一个简单的示例,展示了如何在类中定义和使用静态变量:
```cpp
#include
class MyClass {
public:
static int count; // 声明静态变量
MyClass() {
count++; // 每次创建对象时,count 增加 1
}
static void printCount() {
std::cout << "Number of objects: " << count << std::endl;
}
};
// 定义并初始化静态变量
int MyClass::count = 0;
int main() {
MyClass obj1;
MyClass obj2;
MyClass::printCount(); // 输出: Number of objects: 2
return 0;
}
```
在这个示例中:
- `MyClass` 类中声明了一个静态变量 `count`。
- 在类外定义并初始化了 `count`。
- 每次创建 `MyClass` 的对象时,`count` 的值会增加 1。
- `printCount` 是一个静态成员函数,用于输出当前的对象数量。
#### 4. 为什么答案是正确的
C++ 确实支持在类中定义静态变量。通过上述示例可以看出,静态变量在类中的声明和定义是完全合法的,并且可以正常工作。因此,这道判断题的答案是正确的。
