友元
两个或多个 类可以互相访问私有成员变量,而不用公有变量
class Boat; //由于Car类友元中引用,故需提前声明
class Car
{
int size;
public:
void setSize(int j){size=j;}
int getSize(){return size;}
friend int leisure(int,Car&,Boat&);
};
class Boat
{
int size;
public:
void setSize(int j){size=j;}
int getSize(){return size;}
friend int leisure(int time,Car& aobj,Boat& bobj);//友元函数
};
int leisure(int time,Car& aobj,Boat& bobj)
{
return time * aobj.getSize() * bobj.getSize();
}
静态成员:一个类只有一个变量,不随对象增减而改变
静态成员最好由静态成员函数访问。
/class1.h
class class1
{
int val1;
static int num;
public:
//static int num=0;
Class1(){val1=0;num++;}
~Class1(){num--;}
static void print(){cout<<"There is "<<num<<"Class objects!\n";cout<<"This is "<<__FILE__<<endl;}
};
///main.h///
int Class1::num=0;
main()
{}