C++,私有的类成员函数怎么访问?

比如classtime{....private:voiddisplay();...};main(){..timetime1;time1.display()//可以这样访问... 比如
class time{
....
private: void display();
...
};
main()
{
..
time time1;
time1.display()//可以这样访问么?
展开
 我来答
韧劲9
推荐于2016-02-14 · TA获得超过9224个赞
知道小有建树答主
回答量:1638
采纳率:92%
帮助的人:355万
展开全部
类的成员变量分三种: public protect private

1、类的成员函数可以访问类这三类
2、继承类成员函数可以访问 protect 类型
3、只有本身类的成员函数才可以访问 private 类型

4、类的对象若在其他函数中是不可以访问类的 protect private类型变量

类其实是个模型。
而对象就是找个这个模型制作的实体。
比如,类是造车的图纸,对象就是找个图纸造出的汽车。
类的成员是分级别的:protect,public,private。
在类内部定义的函数可以访问任何一个变量,或者调用任何的类内部的函数,但是,如果被定义成private的话,对象是不能调用的,也就是对象只能调用定义为public的数据,如果你确实需要调用某个private的变量,你可以定义一个public的函数来返回这个变量,比如:
class D
{
private:
int a;
public:
int Getint(){return a;}
......
}
这里你的对象不能调用a的,
也就是不能
int b;
D d;//假设已经写好了构造函数
b=d.a;//这是错误的,
但是你可以
b=d.Getint();
这样就可以把a的值给b了。
所有的public的函数都可以通过
<对象>.<函数名>
的方式来调用
百度网友7483f44
2007-08-09 · TA获得超过1195个赞
知道小有建树答主
回答量:662
采纳率:0%
帮助的人:1022万
展开全部
当然不可以,只能在自己的成员函数中调用
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sszhouplus
2007-08-09
知道答主
回答量:20
采纳率:0%
帮助的人:11.2万
展开全部
不可以,私有成员函数只能被该类内部成员函数调用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
林正英影迷网
推荐于2018-02-27 · TA获得超过273个赞
知道答主
回答量:371
采纳率:0%
帮助的人:192万
展开全部
可以通过友元函数实现
#include<iostream>
using namespace std;

class test
{
public:
test(){}
~test(){}
private:

void Display(){cout<<"test"<<endl;}
friend void display(test&);
};
void display(test& t)
{
t.Display();
}
int main(void)
{
test t;
display(t);
return 0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
张_银
2007-08-09 · TA获得超过112个赞
知道答主
回答量:90
采纳率:0%
帮助的人:97.8万
展开全部
可以再声明一个公共函数,在此函数中调用私有的类成员函数。如:
public:
void func1(){display();}
void main()
{
...
time time1;
time1.func1();

...
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式