注册 登录
编程论坛 C++教室

[求助]类的对象可以访问类的私有成员和保护成员吗?

wyy022 发布于 2006-12-20 12:48, 9956 次点击
[求助]类的对象可以访问类的私有成员和保护成员吗?
8 回复
#2
yuyunliuhen2006-12-20 13:22
可以用友元函数访问到私有成员;
创建友元函数将原形放在类声明中,并在原型声明中加上关键字FRIEND:
如:freend time operate* (double m,const & t);
注意:虽然opreate* () 是在类声明中声明的,但它不属于成员函数;虽然opreate* () 不是成员函数,但他与成员函数的访问权限是相同的,也就上说他可以访问到类中的私有成员。
接下来是函数定义,注意不要在定义中使用FRIEND。
#3
xiaori2006-12-20 22:36

类的对象只能调用类本身的public部分,其余部分不可以调用

#4
wyy0222006-12-22 11:22
谢谢!
#5
smartwind2006-12-27 10:19

楼主的问题本身就很有问题,能访问某个变量或函数的应该是一个函数,而不是任何对象或者变量,比如你不会去问变量x能不能访问变量y,这是毫无意义的。
类的private成员可以被该类的任何一个成员函数访问,protected成员可以被该类或该类的派生类的成员函数访问,public成员可以被任意函数访问。

[此贴子已经被作者于2006-12-27 10:36:36编辑过]

#6
一二三四五2006-12-27 11:15
在类里面,当然可以调用它自己的任何成员
可是当你到类的外面了,你生成的这个类的对象就不能直接调用它的私有或者保护成员了
#7
pusawl2006-12-27 13:40
强烈建议楼主看书去~~
#8
一二三四五2006-12-27 14:03
呵呵,书是要看的,不过练习也是有必要的

#9
wyy0222006-12-28 16:22

我会听取意见的,谢谢了.

1