【每日一练】(第2期)关于静态成员的理解
来源:互联网 发布:动态qos 知乎 编辑:程序博客网 时间:2024/05/23 19:32
//思考题一:// testStatic.cpp : 请问下面的代码有没有错误?怎么理解?//#include <iostream>using namespace std;class A{public: int i; static A a;};A A::a;int main(){ A::a.a.a.a.a.a.a.i = 123; cout << A::a.a.a.i << endl; system("pause");}
【答案】
这道题主要是考察对静态成员的理解。因为静态成员a存放在静态数据区,a里面有一个i,sizeof(A)是4,只包含i。A::a.a.a的意思就是取A类的静态成员a,a.a的意思a的静态成员a,也就是取A类的静态成员a,所以无论写多少次都没关系。
这道题目还有一个启示,就是因为static成员是独立于任何对象而存在,不属于任何任何对象的组成部分,所以static数据成员的类型可以是该成员所属的类的类型,而普通成数据成员就不能这么定义。
- 【每日一练】(第2期)关于静态成员的理解
- 【每日一练】(第3期)关于STL的泛型算法count_if()
- 【每日一练】】(第7期)C++编程规范之类的设计2
- 【每日一练】(第1期)关于调用规范和函数指针
- 【每日一练】(第4期)C++编程规范-继承
- 每日一练2
- 每日一练2
- 每日一练------判断是一年的第几天
- IOS 每日一练 第一天
- iOS每日一练(2)
- 11.7每日一练2
- 每日一练-----简单的计算器
- 关于c++的静态数据(函数)成员的理解
- [每日一练]java基础练习2
- 前端进阶-每日一练(2)
- 2017-11-2每日一练
- 算法每日一练
- 每日一练
- 获取activity栈的最顶端的一个
- 云计算:大数据时代的系统工程(三)
- mysql主从热备
- (转)零零散散学算法之浅析内存管理的方式
- 微软Expression真的迎来了末日
- 【每日一练】(第2期)关于静态成员的理解
- Tab的用法
- iOS delegate 实现页面之间的传值
- UltraEdit中使用正则表达式替换
- 将时间统一转化成为yyyy-MM-dd格式
- mongodb启动出现 无法定位程序输入点 InterlockedCompareExchange64
- 视频编码的守望者--Jason Garrett-Glaser
- poi excel带公式导出
- 45个android实例源码