私有的时候可以通过成员函数来访问(使用前要初始化)。。。对象和类名都可以引用静态数据成员
#include <iostream>
using namespace std;
class time
{
private:
static int hour;
public:
time(int,int);
int minute;
int second;
void display();
};
time::time(int m,int s):minute(m),second(s){};
int time::hour=15;
void time::display()
{
cout<<hour<<":"<<minute<<":"<<second<<endl;
}
int main()
{
time t1(06,20),t2(10,30);
//cout<<t1.hour<<endl;
//通过对象引用静态数据成员。
//cout<<t2.hour<<endl;
//同上。
//cout<<time::hour<<endl;
//通过类名引用静态数据成员。
t1.display();
t2.display();
return 0;
}
静态的函数可以用来控制private得类型的构造函数实例。。
#include <iostream>
using namespace std;
class time
{
private:
static int hour;
time(int,int);
public:
static time* a(int,int);
int minute;
int second;
void display();
};
time::time(int m,int s):minute(m),second(s){};
int time::hour=15;
time*
time::a(int a1,int b1)
{
return new time(b1,b2);
}
void time::display()
{
cout<<hour<<":"<<minute<<":"<<second<<endl;
}
int main()
{
time *t1=time::a(100,100);
t1->display();
return 0;
}
[[it] 本帖最后由 sunkaidong 于 2008-3-8 20:54 编辑 [/it]]