访问说明符的 “:"
成员访问说明符private之后,下一个访问说明符之前所有数据成员和成员函数不同只能由该类的成员函数访问。成员说明符之后总有冒号(:),并在类定义中以不同的顺序多次出现。"下文将使用成员访问说明符public和private(不加冒号)"LN^%t8~.v
1b|\ N s`)Glz(q
这里的 ”成员访问说明符public和private(不加冒号)"” 不明白 成员访问说明符 和成员说明符的区别 不太看得懂LZ的意思(T+?\BiF,^&Us
类的访问控制
privat 私有
public 公有
比如类:"}OY/mnYZ g Dg
L2uG!d9n0G hy
class box
{,Q.q"i}$XH@'utd3E
public:
int x,int y;
int getZ();G5x ^zHH%N%Si
private:
int z;
}?3A;OT0P WA
那么j(zr y*wc7fER
x和y是公有数据成员,可以被外部成员函数调用,I'PMz\P9|.B
z是么有成员函数,只能在类内部使用
2uu#Szcs/O
比如代码.WuL-i:E6b&P2ys
box mybox;
.?T:@!PF)h;u
box.x=20; //正确n0Y6Q6VX}._
box.z=10; //错误 这个我知道呀PI M.j"_K5e;l,q:W-c
~ NY(l)hC Y"UFq.d
书上说的这个 ”成员访问说明符public和private(不加冒号)"” 不明白 [quote]原帖由 [i]otc15tt60777[/i] 于 2007-8-13 17:29 发表.EpC(y&ZAk/dU
这个我知道呀
书上说的这个 ”成员访问说明符public和private(不加冒号)"” 不明白 [/quote]^1UkntA
"[2CSR;H|
"?&bub-_?y*Y~
////////////////////////t O{!^K K
|.Y(iV\I
哦hX w6G?)k
LZ在看什么书??9g'K k2s,SU w-ge
sOl8[&Hz fJ7pU
偶翻了一下书,没提到这段
偶是看《标准C++编程宝典》 哈哈`'h#y$I0wD7G
我估计1楼的哥们看的是《Visual C++ .NET高级编程》原话是:l*Xr,df/yr
成员访问说明符后面都需要加上冒号(:),它们可以在一个类定义中以任何次序重复使用。在下面,我们在提到成员访问说明符public和private时将不带冒号。 我看的是 how to programma c++
还是不明白 谁能给个具体列子 例了
d'RL n2v S
class box*{3CpR2^;c
{j~9UYlC
public: //以下为公有成员
int getX();
void setX( int x);
private: //以下为私有成员,只有类成员才能直接访问
int x;
};
/pw1sa9j-AH+xY
这个类中qA8x|-X| u
getX函数和setX函数为公有成员,类的实例可以直访问
而x这个类数据成员是不能直接访问的 偶有些明白楼主的意思了jf'Ke7W.P1rS~
两个类A,B5L g)Z"Hx4N2h-JD
class A
{g0~v A3T ~h |
public:
int a_x,a_y,a_z;}5G%k-g8Y,ieW4E
}mya;
class B
{
public:
int b_x,b_y,b_z;
public:
int fu_getA_x();g GBClN$lr$a#@
}
,f(I"[B@,^
int B::fu_getA_x()
{(aFC"wASoE0n.E
return mya:a_x; //这里直接调用类A里的数据成员a_x
} 偶有些明白楼主的意思了ZR!@f;tG4Ug9t
,Z%[ CuD MH&h9X%e
两个类A,B
class A
{:@LKq(Wi
public:
int a_x,a_y,a_z;