这里是Joe本人在学习c++做的笔记,如果能帮助你,那我受宠若惊!
1、类作用域:使用x.m或者x::m来访问对象成员,x::m可以访问类的静态成员。
2、在其他命名空间中引用其他空间的标识符:
1.如果在class a中引用class c的对象标识符x,则需要a::c x
2.或者使用using namespace c;
3、局部函数使用静态变量(static int i = 1),i不会因为每次函数调用而刷新,而是会保存上次调用的结果,
4、静态数据成员
1.类属性:如果某个属性为整个类共有,不属于某个对象,叫类属性,用static
2.静态数据成员具有静态生存空间,不属于任意对象,用a::x来访问。
#include<iostream>
using namespace std;
class Point{
public:
Point(int x=0,int y=0):xp(xp),yp(yp){//注意这里xp,yp,与private中相对应。
count++;
}
Point(Point &p){
xp=p.xp;
yp=p.yp;//注意这里xp,yp,与private中相对应。
count++;
}
~Point(){count++;}
int getx(){return xp;}
int gety(){return yp;}//注意这里xp,yp,与private中相对应。
void show(){
cout<<count<<endl;
}
private:
int xp,yp;
static int count;//静态变量
};
int Point::count=0;//这个count在main中无法初始化。
int main(){
Point a(4,5);
a.show();
Point b(a);
b.show();
return 0;
}
5、静态成员函数可以直接用类名而不创建对象来访问。
如:
void A::f(A a){
count<<a.x;
}