再谈sizeof

来源:互联网 发布:酷家乐咋装修设计软件 编辑:程序博客网 时间:2024/06/09 18:20
#include <bits/stdc++.h>using namespace std;int c;static int d;class e{public:e(){cout<<"e"<<endl; }int f;static int g;//类中的static变量不会计入 sizeof中 //private:声名为private的函数继承中不可用 void pri(){cout<<"base_e"<<endl;} ~e(){cout<<"d_base_e"<<endl;} };class ano_e : public e{public:ano_e(){cout<<"ano_e"<<endl;}};int main(){int a;cout<<sizeof(a)<<endl;int *b[4];cout<<sizeof(*b)<<" "<<sizeof(b)<<" "<<**b<<" "<<sizeof(**b)<<endl; cout<<sizeof(&*b)<<endl;  cout<<sizeof(c)<<endl; cout<<sizeof(d)<<endl;  cout<<sizeof(e)<<endl;  ano_e h;//继承类先运行被继承的构造函数  h.pri();}


通过运行代码我们可以看出,静态变量为全局变量时,还是会有sizeof值,在类中并没有值;另外,继承类时会先运行被继承类的构造函数,private继承时会有问题,后面具体再谈面向对象设计。

0 0
原创粉丝点击