对象

 对象的成员变量初始值:

      全局空间中类成员初始化为零

      栈空间中类成员初始化为不确定值

      堆空间中类成员初始化为零

#include <stdio.h>

class Test           // 类在C语言中代表一个新的类型,类可以在全局存储区,堆区,栈区申请变量。
{
private:
    int i;
    int j;
public:
    int getI() { return i; }
    int getJ() { return j; }
};

Test gt;     

int main()
{
    printf("gt.i = %d
", gt.getI());      // 全局空间和static修饰局部对象中类成员初始化为零
    printf("gt.j = %d
", gt.getJ());
    
    Test t1;   
    printf("t1.i = %d
", t1.getI());     // 栈空间中类成员初始化为随机值
    printf("t1.j = %d
", t1.getJ());
    
    Test* pt = new Test;   
    printf("pt->i = %d
", pt->getI());   // 堆空间中类成员初始化为随机值
    printf("pt->j = %d
", pt->getJ());      
    delete pt;   
    return 0;
}

如何使一个类的对象有确定的初始值:

      在类的public中提供一个initialize函数,创建对象后立即调用initialize函数初始化对象值。

 
原文地址:https://www.cnblogs.com/zsy12138/p/10694844.html