#include <iostream> #include <cmath> using namespace std; class A { public: static int a; void init() { a = 1; } A(int a = 2) { init(); a++; } }; int A::a = 2; A obj; int main() { cout << obj.a; return 0; }
时间: 2024-04-01 14:38:03 浏览: 72
这段代码的输出结果是2。
原因是:在A类中,定义了静态成员变量a,并在init()函数中将其初始化为1。在A类的构造函数中,又调用了init()函数并将a自增1。但是,在main()函数中,输出的是obj对象的a成员变量,而obj对象在定义时并没有指定a的值,因此默认使用了静态成员变量a的初始值2。
阅读全文
相关推荐
![text/plain](https://img-home.csdnimg.cn/images/20250102104920.png)
![txt](https://img-home.csdnimg.cn/images/20241231045021.png)
![txt](https://img-home.csdnimg.cn/images/20241231045021.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![-](https://img-home.csdnimg.cn/images/20241231045021.png)
![txt](https://img-home.csdnimg.cn/images/20241231045021.png)
![txt](https://img-home.csdnimg.cn/images/20241231045021.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![application/pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241231044736.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)